Интерфейсы

Написано admin в 20 Июнь 2008 – 21:33 -

Интерфейсы

Слово “интерфейс” многозначное и в разных контекстах оно имеет различный смысл. В данной лекции речь идет о понятии интерфейса, стоящем за ключевым словом interface. В таком понимании интерфейс – это частный случай класса. Интерфейс представляет собой полностью абстрактный класс, все методы которого абстрактны. От абстрактного класса интерфейс отличается некоторыми деталями в синтаксисе и поведении. Синтаксическое отличие состоит в том, что методы интерфейса объявляются без указания модификатора доступа. Отличие в поведении заключается в более жестких требованиях к потомкам. Класс, наследующий интерфейс, обязан полностью реализовать все методы интерфейса. В этом – отличие от класса, наследующего абстрактный класс, где потомок может реализовать лишь некоторые методы родительского абстрактного класса, оставаясь абстрактным классом. Но, конечно, не ради этих отличий были введены интерфейсы в язык C#. У них значительно более важная роль. Read more »


Tags: , , , , , , , , , , , , , ,
Находится в Учебник | No Comments »

Урок 21. Как создать экземпляр класса по его имени?

Написано admin в 20 Июнь 2008 – 19:43 -

Урок 21. Как создать экземпляр класса по его имени?

Часто требуется создать экземпляр некоторого класса по его имени. Например, для конфигурации некоторой программы – имя нужного класса может хранится в конфигурационном файле. Или же имя может задать пользователь в каком-нибудь диалоговом окне приложения.

В приведенном ниже примере для Windows мы сделаем это через метод CreateInstance класса Activator. Для этого примера нам понадобятся один интерфейс ISomeInterface и два производных от него класса Class1 и Class2. В принципе можно обойтись и без них, но с ними легче показать, что экземпляры наших классов Class1 и Class2 действительно создаются. Вот объявление интерфейса:

Read more »


Tags: , , , , , , , , , , ,
Находится в Windows и C# | No Comments »