Основные свойства объектно-ориентированного программирования
Три основные свойства характеризуют объектно-ориентированное программирование:
Инкапсуляция (encapsulation-сокрытие) - сокрытие данных и функций. Данные, определяющие состояние объекта, замкнуты в этом объекте. Можно связать данные объекта с этим объектом по-разному, приписав им доступ private или public.
Данные с доступом private используются только внутри объекта, с ними оперируют только функции этого объекта. Данные же с доступом public можно использовать и вне объекта.
Аналогично, функции объекта с доступом private можно использовать только внутри объекта, то есть к ним можно обращаться только из функций объекта. В то время как к функциям объекта с доступом public можно обращаться и извне объекта.
Хороший стиль объектно-ориентированного программирования требует объявить наибольшее число данных и функций как private, обеспечив обращение к объекту, в идеале, только через интерфейс, то есть через открытые функции объекта, имеющие доступ public. Доступ private закрывает доступ к данным и функциям объекта извне.
В классе CBall примера 2.2.1 функция Set() объявлена как public, поэтому, используя её, допустимо обращение извне к объекту ball класса CBall: Желательно придерживаться правила: скрывать в объектах всё, что возможно, исключив тем самым нежелательные изменения данных извне. Пусть эти изменения данных делаются в границах объекта только его родными функциями. Этим обеспечивается не только надёжность объектов, но и системы, состоящей из надёжных объектов.
Инкапсуляция (encapsulation-сокрытие) - сокрытие данных и функций. Данные, определяющие состояние объекта, замкнуты в этом объекте. Можно связать данные объекта с этим объектом по-разному, приписав им доступ private или public.
Данные с доступом private используются только внутри объекта, с ними оперируют только функции этого объекта. Данные же с доступом public можно использовать и вне объекта.
Аналогично, функции объекта с доступом private можно использовать только внутри объекта, то есть к ним можно обращаться только из функций объекта. В то время как к функциям объекта с доступом public можно обращаться и извне объекта.
Хороший стиль объектно-ориентированного программирования требует объявить наибольшее число данных и функций как private, обеспечив обращение к объекту, в идеале, только через интерфейс, то есть через открытые функции объекта, имеющие доступ public. Доступ private закрывает доступ к данным и функциям объекта извне.
В классе CBall примера 2.2.1 функция Set() объявлена как public, поэтому, используя её, допустимо обращение извне к объекту ball класса CBall: Желательно придерживаться правила: скрывать в объектах всё, что возможно, исключив тем самым нежелательные изменения данных извне. Пусть эти изменения данных делаются в границах объекта только его родными функциями. Этим обеспечивается не только надёжность объектов, но и системы, состоящей из надёжных объектов.