Реклама:

Затем операцией new определяются сами объекты, под них выделяется оперативная память, ссылка получает адрес этого участка памяти в качестве своего значения.

A1 = new MyClass(); A2 = new MyClass();

На третьем этапе происходит инициализация объектов, задаются их начальные значения. Этот этап, как правило, совмещается со вторым, именно для этого в операции new в имени класса MyClass() в скобках можно задать начальные значения параметров.

Таким образом, каждый объект имеет определенные характеристики и набор определенных действий (процедур). Например, окно на экране дисплея - это объект, имеющий ширину width и высоту height, расположение на экране, описываемое обычно координатами (х, у) левого верхнего угла окна, а также шрифт, которым в окно выводится текст, цвет фона color и другие характеристики. Действия: окно может перемещаться по экрану методом move(), увеличиваться или уменьшаться в размерах методом size(), сворачиваться в ярлык методом iconify(), реагировать на действия мыши и нажатия клавиш. Кнопки, полосы прокрутки и прочие элементы окна - это тоже объекты со своими размерами, шрифтами, перемещениями.

Иерархия классов. Она заключается в том, что для данного, достаточно общего класса, можно образовать подклассы, которые включают свойства и методы исходного класса, но имеют свои особенности. Такая организация классов напоминает классификацию в биологии. Отметим, что на каждом следующем уровне иерархии в класс добавляются новые свойства, но ни одно общее свойство не пропадает. Поэтому новый, более частный класс называется продолжением (extension) класса, или подклассом. Также говорят о наследовании (inheritance) классов. Более широкий класс при этом называется, суперклассом (superclass). Часто используют и такую терминологию: надкласс, родительский класс, дочерний класс, класс-потомок, класс-предок.

Права доступа к членам класса. Как уже отмечалось, члены класса, к которым не планируется обращение извне, должны быть инкапсулированы добавлением модификатора private к описанию члена класса. Тогда эти члены классов становятся закрытыми, ими могут пользоваться только экземпляры того же самого класса. В противоположность закрытости можно объявить некоторые члены класса открытыми, записав вместо слова private модификатор public. К таким членам может обратиться любой объект любого класса. Когда надо разрешить доступ только наследникам класса, тогда в Java используется защищенный (protected) доступ, отмечаемый модификатором protected.

В языке Java словами private, public и protected отмечается каждый член класса в отдельности.

Принцип модульности предписывает открывать члены класса только в случае необходимости. Если же надо обратиться к полю класса, то рекомендуется включить в класс специальные методы доступа, отдельно для чтения этого поля (метод get) и для записи в это поле (метод set). Имена методов доступа рекомендуется начинать со слов get и set, добавляя к этим словам имя поля.

Как описать класс и подкласс

Для создания нового класса необходимо создать файл, в котором будет описание класса. Имя файла должно совпадать с именем содержащегося в нем класса и иметь расширение java.


⇐ Предыдущая страница| |Следующая страница ⇒