ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Абстрагирование и классыНа основе абстрагирования решение какой-либо проблемы выражается в понятиях представления информации, в терминах её преобразований и взаимодействие с ней разработчика программной системы. В результате создаётся абстрактные представления самых важных операционных особенностей проблемы, выделяются операционные термины (имена операций), необходимые для решения проблемы и решение отдельных задач формулируется на основе этих операций. От абстракции к реализации всего один шаг. В С++ описание класса обеспечивает формирование интерфейса, содержащего операционные термины – имена операций с параметры. Реализация класса определяет решение задачи. Описание классов, а также применение принципа абстрагирования выполнимы на основе следующего примера, приведённого в книге Стивена Прата: «Язык программирования С++. Лекции и упражнения». Определяемый класс, представляет пакет акций. Перечень операций, которые необходимо реализовать включает:
Для поддержки этого интерфейса необходимо хранить некоторые виды информации:
class Stock // объявление класса, представляющего пакет акций private: char company[30];//имя компании int shares;//число акций double share_val;//стоимость одной double total_val;//стоимость пакета void set_tot() public: void acquire(const char * co, int n, double pr);//приобретение пакета void buy(int num, double price);//приобретение дополнительных акций void sell(int num, double price);//продажа void update(double price);//корректировать стоимость void show();//данные о пакете };
Подробная спецификация делается либо в.h – файлах, либо в.cpp – файлах. Обычно предпочитают.h – файлы. Реализация функций или методов классов обычно всегда выполняется в.cpp – файлах. Ключевые слова – private и public описывают управление доступом. Так, public – указывает, что доступ к операциям или данным возможен из любой точки программы, а private – только из других методов (функций) этого же класса. Это объявление класса позволяет объявлять в программе переменные, именуемые объектами или экземплярами класса Stock:
Stock sally, solly;
Создаются два объекта типа Stock. Переменные и методы в разделе public класса определяют интерфейс класса.
Защита данных поддерживается тем, что данные защищены от прямого доступа к ним. К ним обращаются через операции интерфейса. Принцип инкапсуляции состоит в том, что реализаци отделена от интерфейса. Так какие-либо изменения в приватной части класса или в декларациях public – методов, при условии сохранения имён функций интерфейса и типов их параметров не приведёт к переделкам той части программы где используются объекты этого класса. Не нашли, что искали? Воспользуйтесь поиском:
|