Для чего нужны интерфейсы
Оценка 4.6

Для чего нужны интерфейсы

Оценка 4.6
docx
18.11.2021
Для чего нужны интерфейсы
Л2-002165.docx

Для чего нужны интерфейсы

Интерфейс не несет в себе никакой функциональности, а объявлен- ные в интерфейсе методы можно реализовать в классе и без существо- вания интерфейса. Почему же он бывает необходим?

Интерфейс может быть базовым классом для нескольких производных для реализации динамического связывания (вызова перегруженных ме- тодов).

 

Если Вы решили реализовать класс с интерфейсом, который будет использовать какая-либо программа (клиент), то компилятор не позво- лит Вам сделать ошибку в количестве методов, которые необходимо реа- лизовать, сигнатуре каждого метода интерфейса и возвращаемом им значении.

 

Программа, использующая класс, в котором должен быть реализован интерфейс, может удостовериться в этом, прежде чем вызывать его ин- терфейсные методы, с помощью рефлексии или операторов as или is:

if (!(ob is IA))

throw new Exception ("Объект НЕ реализует интерфейс IA");

Ряд средств языка во время выполнения программы так же осуществ- ляют проверку наличия интерфейса.

 

Например, оператор foreach опрашивает объект, на предмет того, реализует ли он интерфейс System.Collection.IEnumerable.


Если Вы подготовили объект с этим интерфейсом, то оператор foreach будет успешно использовать Ваш метод GetEnumerator(). Этот метод возвратит объект с методом MoveNext() и свойством Current для доступа к очередному элементу коллекции.

Если окажется, что объект не реализует требуемый интерфейс, foreach сгенерирует исключение.

 


 

Для чего нужны интерфейсы

Для чего нужны интерфейсы

Если Вы подготовили объект с этим интерфейсом, то оператор foreach будет успешно использовать

Если Вы подготовили объект с этим интерфейсом, то оператор foreach будет успешно использовать
Скачать файл