img

Интерфейсы

Интерфейсы это конструкции языка, которые определяют, какие методы должен описывать класс, реализующий этот интерфейс. Если программист создает класс, который поддерживает определенный интерфейс, то этот класс реализует все методы, определенные в интерфейсе. Для того, чтобы определить интерфейс используется ключевое слово interface

Пример. Создадим класс MyClass с поддержкой интерфейса BasicInterface

 interface BasicInterface { void Do1(); void Do2(); } class MyClass : BasicInterface { void Do1() { // Выполняем какие-либо действия #1 } void Do2() { // Выполняем какие-либо действия #2 } } 

Класс может реализовывать несколько интерфейсов, для этого необходимо их перечислить через запятую.

Продемонстрируем на примере полиморфизма, работу с классами, интерфейсами и наследованием.

 // Создадим интерфейс I и классы A и B, реализующие этот интерфейс interface I { void Print(); } class A : I { void Print() { System.Print("Class A"); } } class B : I { void Print() { System.Print("Class B"); } } int Run() { I @i1 = A(); I @i2 = B(); i1.Print(); i2.Print(); return(0); } 

Результат:

 Class A Class B