на начало
На главную страницу
Форум   

Статья :: Наследование и интерфейсы

 

Наследование и интерфейсы

  • Основы наследования
  • Знакомство с наследованием
  • Обращение к функциональности базового класса
  • Переопределение свойств и методов
  • Как стать начальником?
  • Просмотр иерархии наследования
  • Правила преобразования и обращения к членам классов в иерархии наследования
  • Полиморфизм на практике
  • Замещение
  • Абстрактные базовые классы
  • Пример: класс CollectionBase
  • Корневой базовый класс Object
  • Основные методы класса Object
  • Equals и ReferenceEquals
  • МетодToString
  • Функция GetType и рефлексия
  • MemberWiseClone
  • Проблема неустойчивости базовых классов и контроль версии
  • Интерфейсы
  • Механика реализации интерфейса
  • Нетривиальное применение интерфейсов
  • Выбор между интерфейсами и наследованием
  • Важнейшие интерфейсы .NET Framework
  • ICloneable
  • Disposable
  • Коллекции
  • For Each и интерфейс lEnumerable
  • ICollection
  • IList
  • IDictionary
  • IComparable
  • Интерфейс IComparer

В предыдущей главе кратко упоминались два столпа объектно-ориентированного программирования в VB .NET: наследование реализации, обеспечивающее возможность многократного использования кода, и наследование интерфейсов, то есть «контракт», которому должны соответствовать некоторые аспекты поведения класса. Обе разновидности наследования будут подробно рассмотрены в этой главе.

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

После описания механики и основных принципов наследования реализации мы во всех подробностях изучим класс Object, являющийся предком всех объектов .NET. Завершая описание наследования реализации, мы покажем, как в .NET решается проблема неустойчивости базовых классов, вызывающая немало хлопот при наследовании реализации в других объектно-ориентированных языках — таких, как Java и С++. Не пугайтесь термина «проблема неустойчивости базовых классов»; речь идет всего лишь о том, что непродуманные изменения базового класса могут нарушить работу производных классов.

С этого момента под термином «наследование» будет пониматься наследование реа-лизации. Если речь пойдет о программном коде, использующем наследование интерфейсов, мы будем употреблять термин «реализация интерфейсов». На первый взгляд терминология кажется крайне запутанной, но большинство программистов быстро привыкают к этим сокращенным обозначениям.

От наследования мы перейдем к реализации интерфейсов в VB .NET. В завершение этой главы вы узнаете, как использовать важнейшие интерфейсы .NET Framework IComparable, ICloneable и IDisposable.

Программисты с опытом использования интерфейсов BVB5 и VB6 будут приятно удивлены тем, насколько понятнее выглядят программы при реализации интерфейсов в VB .NET. В синтаксисе произошли заметные изменения к лучшему.

 

Наследование и интерфейсы

страницы в данном разделе 
Наследование и интерфейсы Основы наследования
Обращение к функциональности базового класса Как стать начальником?
Абстрактные базовые классы Метод ToString
Интерфейсы Нетривиальное применение интерфейсов
ICollection Глава 5. Наследование и интерфейсы


Содержание сайта (выборка)
Apache
Протоколы TCP/IP (принципы, протоколы и архитектура)



PHP, PELR, JSP
PHP
JavaServer Pages (JSP)

Базы данных
Основы mysql
СУБД INFORMIX
СУБД POSTGRES
Основы проектирования реляционных баз данных

HTML, javascript
Спецификация HTML 4.01
Каскадные Таблицы Стилей, Уровень 2
Клиентский JavaScript. Справочник.
JavaScript руководство пользователя
Серверный JavaScript 1.4. Руководство по Использованию.

Паскаль, C, C++, C#
GCC (примеры)
FAQ Валентинa Озеровa DELPHI
C



 
© faq.pp.ru, справочник программиста