Содержание
- 2. ©Павловская Т.А. (СПбГУ ИТМО) Лекция 9. Интерфейсы. Контейнерные классы Описание и использование интерфейсов. Применение стандартных интерфейсов
- 3. ©Павловская Т.А. (СПбГУ ИТМО) Интерфейсы
- 4. ©Павловская Т.А. (СПбГУ ИТМО) Общие сведения об интерфейсе Интерфейс является «крайним случаем» абстрактного класса. В нем
- 5. ©Павловская Т.А. (СПбГУ ИТМО) Интерфейс может наследовать свойства нескольких интерфейсов, в этом случае предки перечисляются через
- 6. ©Павловская Т.А. (СПбГУ ИТМО) Область применения интерфейсов Если некий набор действий имеет смысл только для какой-то
- 7. ©Павловская Т.А. (СПбГУ ИТМО) Отличия интерфейса от абстрактного класса элементы интерфейса по умолчанию имеют спецификатор доступа
- 8. ©Павловская Т.А. (СПбГУ ИТМО) Реализация интерфейса В C# поддерживается одиночное наследование для классов и множественное —
- 9. ©Павловская Т.А. (СПбГУ ИТМО) Пример interface Iaction { void Draw(); int Attack( int a ); void
- 10. ©Павловская Т.А. (СПбГУ ИТМО) Обращение к реализованному методу через объект типа интерфейса Удобство этого способа проявляется
- 11. ©Павловская Т.А. (СПбГУ ИТМО) Второй способ реализации интерфейса Явное указание имени интерфейса перед реализуемым элементом. Спецификаторы
- 12. ©Павловская Т.А. (СПбГУ ИТМО) Пример Пусть класс Monster поддерживает два интерфейса: один для управления объектами, а
- 13. ©Павловская Т.А. (СПбГУ ИТМО) Операция is При работе с объектом через объект типа интерфейса бывает необходимо
- 14. ©Павловская Т.А. (СПбГУ ИТМО) Операция as Операция as выполняет преобразование к заданному типу, а если это
- 15. ©Павловская Т.А. (СПбГУ ИТМО) Интерфейсы и наследование Интерфейс может не иметь или иметь сколько угодно интерфейсов-предков,
- 16. ©Павловская Т.А. (СПбГУ ИТМО) Пример interface IBase { void F( int i ); } interface Ileft
- 17. ©Павловская Т.А. (СПбГУ ИТМО) Особенности реализации интерфейсов Класс, реализующий интерфейс, должен определять все его элементы, в
- 18. ©Павловская Т.А. (СПбГУ ИТМО) Стандартные интерфейсы .NET В библиотеке классов .NET определено множество стандартных интерфейсов, задающих
- 19. Сравнение объектов Интерфейс IComparable определен в пространстве имен System. Он содержит всего один метод CompareTo, возвращающий
- 20. Интерфейс IComparable ©Павловская Т.А. (СПбГУ ИТМО) class Person : IComparable { public string Name { get;
- 21. Интерфейс IComparer ©Павловская Т.А. (СПбГУ ИТМО) interface IComparer { int Compare(object o1, object o2); } class
- 22. ©Павловская Т.А. (СПбГУ ИТМО) Пример реализации интерфейса class Monster : IComparable { public int CompareTo( object
- 23. ©Павловская Т.А. (СПбГУ ИТМО) Параметризованные интерфейсы class Program { class Elem : IComparable { string data;
- 24. ©Павловская Т.А. (СПбГУ ИТМО) Клонирование объектов Клонирование — создание копии объекта. Копия объекта называется клоном.
- 25. ©Павловская Т.А. (СПбГУ ИТМО) Виды клонирования При присваивании одного объекта ссылочного типа другому копируется ссылка, а
- 26. Клонирование объектов. Интерфейс ICloneable ©Павловская Т.А. (СПбГУ ИТМО) class Program { static void Main(string[] args) {
- 27. Интерфейс ICloneable ©Павловская Т.А. (СПбГУ ИТМО) class Person : ICloneable { public string Name { get;
- 28. Поверхностное клонирование ©Павловская Т.А. (СПбГУ ИТМО) class Person : ICloneable { public string Name { get;
- 30. Скачать презентацию