Показать сообщение отдельно

  #10  
Старый 14.08.2009, 02:22
Кубик Рубик
Познающий
Регистрация: 10.04.2008
Сообщений: 51
С нами: 9518788

Репутация: 0
По умолчанию

Привет, у меня вопросы по теоретическому материалу ООП!
В интернете много информации на эту тему, но стоит пробежаться по ней как в голове сразу возникает каша. Ибо везде разным понятиям дается размытое определение.
В частности у ООП есть 2 принципа которые плохо изъясняются: Абстрагирование и инкапсуляция.

Начнем...
Благодаря абстракции в ООП, мы представляем объект как некую сущность(в адресном пространстве), которая имеет существенные признаки: свойства и методы. Таким образом, программный объект*— это абстракция.

Теперь...
Детали реализации объекта скрыты, он используется через его интерфейс*— совокупность правил доступа(набор определенных методов и свойств к которым программист может обратится). Скрытие деталей реализации называется инкапсуляцией.

Итак, объект*— это инкапсулированная абстракция с четко определенным интерфейсом.

Это позволяет представить программу в укрупненном виде — на уровне объектов и их взаимосвязей.

Я все правильно понял?

Вопрос №2:
Если при создании класса не были применены спецификаторы доступа, т.е. все свойства и методы public, то он не является инкапсулированным?
 
Ответить с цитированием