
14.08.2009, 02:22
|
|
Познающий
Регистрация: 10.04.2008
Сообщений: 51
С нами:
9518788
Репутация:
0
|
|
Привет, у меня вопросы по теоретическому материалу ООП!
В интернете много информации на эту тему, но стоит пробежаться по ней как в голове сразу возникает каша. Ибо везде разным понятиям дается размытое определение.
В частности у ООП есть 2 принципа которые плохо изъясняются: Абстрагирование и инкапсуляция.
Начнем...
Благодаря абстракции в ООП, мы представляем объект как некую сущность(в адресном пространстве), которая имеет существенные признаки: свойства и методы. Таким образом, программный объект*— это абстракция.
Теперь...
Детали реализации объекта скрыты, он используется через его интерфейс*— совокупность правил доступа(набор определенных методов и свойств к которым программист может обратится). Скрытие деталей реализации называется инкапсуляцией.
Итак, объект*— это инкапсулированная абстракция с четко определенным интерфейсом.
Это позволяет представить программу в укрупненном виде — на уровне объектов и их взаимосвязей.
Я все правильно понял?
Вопрос №2:
Если при создании класса не были применены спецификаторы доступа, т.е. все свойства и методы public, то он не является инкапсулированным?
|
|
|