Имя Пароль
Зарегистрироваться


* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна! RSS



Инкапсуляция
8 февраля 2009

Инкапсуляция представляет собой один из базовых принципов ООП, суть которо-
го состоит в отделении реализации объекта от его интерфейса. Другими словами,
приложение взаимодействует с объектом через его интерфейс, который состоит из
открытых свойств и методов. Коль скоро интерфейс объекта остается неизменным,
приложение сохраняет способность к взаимодействию с ним, даже если в новой
версии объекта его реализация полностью изменится.
Объекты должны взаимодействовать друг с другом только через свои открытые
методы и свойства, поэтому объекту требуются все необходимые данные и полный
набор методов, необходимых для работы с этими данными. Интерфейс ни в коем
случае не должен открывать доступ к внутренним данным объекта, поэтому поля с
внутренними данными объекта редко объявляют с модификатором Public (public).
Вернемся к примеру с объектом Автомобиль, который может взаимодействовать
с объектом Водитель через открытый интерфейс, где объявлены методы Ехатъ_впе-
ред, Ехать_назад и Остановиться — их достаточно для взаимодействия объектов
Водитель и Автомобиль. У объекта Автомобиль может быть дочерний объект Двига-
тель, но это безразлично объекту Водитель — ему важно лишь наличие методов,
вызывая которые, удается получать соответствующие значения. Так, можно заме-
нить объект Двигатель, и взаимодействующий с ним объект Водитель не заметит
замены, если она не нарушит корректную работу интерфейса.

Теги: .NET

Статьи по теме:

Перечисления CTS
Создание экземпляров элементов управления ActiveX
Модификация и обновление данных
Интерфейсы как средство достижения полиморфизма
Редактор файловой системы
Рисование сложных фигур
Установка сборок в виде компилированных образов
Свойства по умолчанию и индексаторы
Управление лицензированием элементов управления
Свойства-наборы
Формы, элементы управления и меню
Создание дополнительных типов объектов Doughnut
.NET Framework и языки программирования
Сокрытие членов базового класса в Visual C#
Анти-паттерны в действии или Самые популярные ошибки программистов
| .NET | Pavel |
 


Пн Вт Ср Чт Пт Сб Вс
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31


     



Rambler

Данный сайт или домен продается ICQ: 403-353-727

© 2009 Seoliga.ru | .NET | Инкапсуляция. Регион сайта: Москва и Санкт-Петербург