Шаг 71.
Microsoft Visual C++ 2010. Язык С/С++.
Классы в C++. Принципы построения классов. Инкапсуляция

    На этом шаге мы рассмотрим понятие инкапсуляции.

    Основные принципы построения классов это - инкапсуляция, наследование и полиморфизм.

Инкапсуляция

    Инкапсуляция - это принцип объединения в единой конструкции данных и подпрограмм, обрабатывающих эти данные. В терминологии ООП данные называются членами-данными, а подпрограммы, их обрабатывающие (они оформлены в виде функций), - членами-функциями (или методами).

    Такой подход позволяет максимально изолировать объект, получаемый из класса, от внешнего воздействия, что приводит к высокой надежности программ, использующих объекты. С другой стороны, классы используются так, как ранее использовались стандартные программы, только с еще большей эффективностью в самых разных приложениях, что значительно повышает производительность труда программиста. При добавлении новых характеристик классам программы, ранее использовавшие объекты, построенные из них, остаются без изменений.

    В VC++ введено понятие компонентов - специальных классов, в которых объекты определяются с такими характеристиками, как свойства, события и методы. Причем, в отличие от работы с обычными классами, при работе в VC++ возможно манипулировать видом и функциональным поведением компонентов и на стадии проектирования приложения, и в момент его выполнения.

    Например, в VC++ существует компонент "форма" (класс Form) и компонент "кнопка" (класс Button), у которых есть свои свойства, методы и события. Если при проектировании приложения в форму поместить две кнопки, то с помощью определения двух разных значений свойствам кнопок Text (название кнопки) и Visible (значения false и true определяют видимость кнопки при исполнении приложения) вы получаете два экземпляра, которые ведут себя по-разному: первая кнопка при выполнении программы будет невидима в форме, а вторая останется видимой. При помощи события компонент сообщает пользователю, что на него произведено определенное воздействие (например, для компонента "кнопка" событием может быть нажатие кнопки щелчок кнопкой мыши), а методы служат для обработки реакции компонента на события.

    На следующем шаге мы рассмотрим наследование.




Предыдущий шаг Содержание Следующий шаг