Tabla de contenido:
Definición - ¿Qué significa Delegado?
Un delegado es un puntero de función orientado a objetos, administrado, seguro y de tipo seguro en el marco .NET. Una firma de delegado incluye su nombre, tipo de retorno y argumentos pasados. En lugar de pasar datos, un delegado pasa un método a otro método. Los delegados se utilizan en muchos contextos, incluida la implementación de devoluciones de llamada y controladores de eventos, puntos de subproceso de entrada y múltiples tipos de especificaciones de métodos. Debido a que un delegado no conoce la clase de un objeto referenciado, se usa para invocación anónima.
Techopedia explica Delegado
El propósito principal de un delegado es vincular el objeto delegado con la persona que llama, lo que significa que la referencia del método llamado no requiere especificación en tiempo de compilación. Los delegados desempeñan un papel vital en el modelo de programación dirigida por eventos, donde los controladores de eventos se agregan a los controles de la interfaz de usuario (UI).
Los tipos de delegados son:
- Lanzamiento único: apunta a un método único
- Multidifusión: se refiere a varios métodos, cada uno con la misma firma y solo incluye métodos que devuelven nulo para evitar excepciones durante el tiempo de ejecución
- Se ejecutan bajo permisos de llamador, versus declarante.
- Los objetos delegados son inmutables.
- Su modificador de acceso predeterminado es privado (interno) o público.
- Se puede usar un delegado solo después de la instanciación.
- Los delegados pueden declararse como tipos anidados con modificadores de accesibilidad para su clase o estructura que los contiene. En caso de falla durante la ejecución del método delegado, la excepción lanzada se devuelve al llamante del delegado y se detienen las invocaciones adicionales.
