С одной стороны, Delphi, будучи
С одной стороны, Delphi, будучи визуальной средой разработки приложений, ориентирован на тех программистов, которые из готовых компонент "собирают" конкретные приложения для конечных пользователей. С другой стороны, являясь расширяемым объектно-ориентированным инструментом, этот продукт представляет интерес и для специалистов, занимающихся наращиванием функциональных возможностей уже существующих программных библиотек. Поэтому, выглядит абсолютно логичным появление в Object Pascal новых разделов в описании классов, соответственно, published
и protected. Вместе с ранее введенными разделами (public
и private) они предоставляют полный контроль над возможностями использования и "безболезненной" (в смысле предотвращения фатальных с точки зрения идеологии ошибок) модификации компонент Visual Component Library (VCL - библиотека классов Delphi). Чтобы была более ясна логика использования новых разделов, дадим, также, краткую характеристику и уже существующих:
-
private - внутренние деталей реализации
-
protected - интерфес разработчика
-
public - run-time интерфейс
-
published - design-time интерфейс
Все эти разделы работают на уровне модулей (в смысле языка Pascal): если какая-либо часть объекта доступна (или не доступна) в одной области модуля, то такая же доступность будет определена и в другой области модуля (для классов, объявленных в секции Interface). Если вы нуждаетесь в специальной защите объекта или его части, то для этого необходимо его поместить в отдельный модуль.
Раздел protected
комбинирует функциональную нагрузку разделов private
и public таким образом, что, если вы хотите скрыть внутренние механизмы вашего объекта от конечного пользователя, этот пользователь не сможет в run-time
использовать ни одно из объявлений объекта из его protected области, но это не помешает разработчику новых компонент использовать эти механизмы в других модулях. То есть, protected-объявления доступны у любого из наследников вашего класса.
Раздел published
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий