Интерфейсы
Интерфейсы это конструкции языка, которые определяют, какие методы должен описывать класс, реализующий этот интерфейс. Если программист создает класс, который поддерживает определенный интерфейс, то этот класс реализует все методы, определенные в интерфейсе. Для того, чтобы определить интерфейс используется ключевое слово 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