Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВМ.doc
Скачиваний:
3
Добавлен:
21.09.2019
Размер:
159.74 Кб
Скачать

10) Понятие класса. Его виды и методы.

Класс можно рассматривать как шаблон по которому составляется внутренние инструкции для одних и тех же объектов этого класса. Самое полезное свойство этого шаблона – единообразный способ организации всех характеристик объекта. Объектно-ориентированный шаблон на котором основаны похожие объекты называется классом. Когда программа создаёт объект какого-либо класса, она указывает значения его атрибутов. Затем объект может пользоваться методами, написанными для его класса. Все объекты одного и того же класса имеют идентичный набор методов. Типы их внутренних данных также одинаковы, но значения могут отличаться подобно тому, как различаются имена людей. Класс является также и типом данных, но фактически класс – это реализация абстрактного типа данных, т.е. имеет другое название типа данных, определяемое пользователем.

Поскольку класс – это тип данных, его можно использовать в качестве типов атрибута. Предположим сто вы разрабатываете класс для обработки данных о служащих организации. В состав атрибутов такого класса может входить идентификатор служащего, его имя, фамилия и адрес. Адрес состоит из индекса, улицы. Поэтому было бы разумно создать класс с такими атрибутами, вместо того, чтобы дублировать его в класс служащих путём указания объекту класса служащего всех объектов другого класса, с помощью которых предоставляется адрес служащего.

Виды классов в ООП следующие: 1) управляющий класс (control classes). Они не занимаются обработкой и не создают видимого результата. Вместо этого они управляются кодом управления программы. 2) предметный класс (entity). Используется для создания объектов, занимающихся обработкой данных. 3) интерфейсный класс (interface) они занимаются вводом и выводом информации; особенно ярко это проявляется в использовании графического интерфейса, где каждое окно и меню является объектом интерфейса. Предметный класс не выполняет ввод и вывод. Интерфейсные объекты принимают данные и посылают их для хранения и обработки предметным объектам. Вывод на экран и печать производится опять интерфейсными объектами, но получаются данные от других объектов. Возникает вопрос не проще ли было бы поручить предмет самому управлению вводом-выводом. Может быть и проще, но тогда если вы решите изменить размещение информации на экране, то придётся модифицировать весь предметный класс. А при разделении таких обязанностей процедуры манипулирования данными не зависят от способа их ввода и вывода. Их можно перестроить независимо друг от друга. В большинстве программ такое разделение позволяет сэконимить массу времени и избежать ошибки.

Во многих объектно-ориентированных программах используется ещё 4-ый класс – контейнерный (Container Class). Контейнерные классы служат вместилищем нескольких объектов одного и того же класса. Поэтому они собирают объекты вместе иногда их называют агрегатами. Контейнерные классы отвечают за хранение объектов поэтому удобно производить перебор и поиск в таком классе. Т.о. к.к. предоставляет доступ ко всем объектам одного и того же класса. В классах используются следующие виды методов: constructor – метод, имя которого совпадает с именем класса. Он выполняется при создании объекта. И поэтому конструктор обычно содержит инструкции по инициализации переменных объектов. distruktor – метод, используемый при уничтожении объектов. Следует отметить, что не во всех объектно-ориентированных языках есть диструктор. Обычно они применяются для освобождения системных ресурсов ( оперативной памяти занимаемых объектов). accessor (get-метод) возвращает значения закрытого атрибута объектов. Именно так внешние объекты обычно получают доступ к инкапсулированным данным. Метод изменения – mutators (set-метод) устанавливает новое значение для атрибутов. Т.о. внешние объекты изменяют инкапсулированные данные. Прочие методы, определяемые в классе прежде всего зависят от назначения класса, т.е. от тех действий, которые он призван выполнять.

11) Перегружаемые методы классов. Правила именования классов, атрибутов и методов.

В классах исп следующие виды методов:

  1. Конструктор- метод, имя к-ого совпадает с именем класса. Сод инструкции по инициализации переменных объекта.

  2. Деструктор- метод, вып при уничтожении объекта. В нас вр не во всех ОО языках есть деструктор. Обычно они применяются для освобождения системных ресурсов- операт памяти освобожденных объектов.

  3. Методы чтения- возвращают значение закрытого объекта. С помощью этих методов осущ доступ внешних объектов к инкапсулированным даннымю

  4. Метод изменения- устанавливает новые значения для атрибутов классов.

В ООП имеется несколько соглашений об наименовании, хотя никто не заставляет нас называть методы таком образом. Существуют общепринятые правила, обеспечивающие взаимопонимание с программистами и проектировщиками. 1) Имена классов начинаются с заглавной буквы, за которой следует строчная. Если имя класса состоит из нескольких слов, то они разделяются символом подчёркивания или заглавной буквой. 2) Имена атрибутов и методов начинаются с строчных букв. Могут содержать несколько слов с подчёркиванием между ними. 3) Имена методов чтения начинаются с слова get, а за ним следует имя атрибута, значение которого далее считывается ( getProductNunber). 4) Имена методов изменения с set. (setProductNumber). После такого метода назначаются атрибуты.