Зміст:
Визначення - Що означає Делегат?
Делегат - це об'єктно-орієнтований, керований, захищений і безпечний для типу функціональний вказівник у рамках .NET. Підпис делегата включає його ім'я, тип повернення та передані йому аргументи. Замість передачі даних делегат передає метод іншому методу. Делегати використовуються у багатьох контекстах, включаючи реалізацію зворотних викликів та обробників подій, точки введення потоку та кілька типів специфікацій методу. Оскільки делегат не знає клас посилається об'єкта, він використовується для анонімного виклику.
Техопедія пояснює Делегат
Основна мета делегата - зв'язування об'єкта делегата з абонентом, що означає, що викликана посилання методу не вимагає специфікації під час компіляції. Делегати відіграють важливу роль у моделі програмування, керованої подіями, де обробники подій додаються до елементів управління інтерфейсом користувача (UI).
Типи делегата:
- Single-cast: Вказує на один метод
- Багатоадресна передача: Посилається на кілька методів, кожен з однаковою підписом і включає лише методи, що повертають недійсність, щоб уникнути виключення під час виконання
- Вони виконуються під дозволом абонента, а не заявника.
- Об'єкти делегування незмінні.
- Його модифікатором доступу за замовчуванням є приватний (внутрішній) або загальнодоступний.
- Делегат може використовуватися лише після інстанції.
- Делегати можуть бути оголошені вкладеними типами з модифікаторами доступності для їх класу або структури. У разі відмови під час виконання методу делегата, викинутий виняток передається назад абоненту делегата, і подальші виклики зупиняються.