Описание класса

Введение в классы, объекты и методы

Как известно, язык Java – это объектно-ориентированный язык программирования. В предыдущих главах, рассматривая примеры программ, мы никак особо не акцентировали внимание на объектной ориентированности языка, приближая стиль их написания к директивному стилю. Однако даже самая простая программа на Java должна состоять, по крайней мере, из одного класса и содержать методы. Поэтому в этой главе рассмотрим обзорно основные понятия объектно-ориентированного программирования (ООП), не углубляясь в концепцию объектно-ориентирован­ного подхода к проектированию программ, которая будет подробно изложена позже в главах…

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

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

Класс определяет общие для всех его объектов методы и свойства. Методы – это функции, реализующие некоторый алгоритм, который определяет взаимодействие объектов класса с внешней средой. Свойства представляют собой характеристики (атрибуты), присущие объектам (например, размер шрифта, название и др.).

Описание класса

В Java класс является основным программным элементом. Как вы уже успели заметить, все исполняемые программы Java являются классами. Однако сами классы не являются программами, так как в отличие от программ, представляющих собой последовательно выполняемые инструкции, элементы класса могут располагаться в произвольном порядке. До сих пор нами применялась только самая элементарная форма классов, содержащая один единственный метод main(). Однако классы являются более мощными компонентами языка, чем представленные до сих пор.

Объявление класса состоит из заголовка и тела класса. Заголовок класса начинается со слова class, после которого записывается имя класса. Напомним, что в соответствии с соглашением об именовании, имена классов начинаются с прописной буквы (если имя содержит несколько слов, то каждое слово начинается с прописной буквы). Перед словом class могут быть записаны модификаторы класса (англ., class modifiers). Некоторые модификаторы будут рассмотрены позже.

В самом простом случае объявление класса имеет следующий вид:

сlass имя_класса

{

/* Тело класса */

}

Тело класса может содержать объявления членов класса: переменных (полей), методов, вложенных классов, которые заключаются в фигурные скобки.

Полями называются переменные и константы, характеризующие состояние объекта или класса.

Методы – это функции (или подпрограммы) Java, которые объявляются только внутри классов и характеризуют поведение объектов. Таким образом, методы – это последовательности операторов, выполняющих какие-либо действия с полями для изменения состояния объекта.

Ниже записана общая форма определения класса:

class имя_класса {

тип переменная_экземпляра1;

тип переменная_экземпляра2;

/ /...

тип переменная_экземпляраN;

тип имя_метода1 (список_параметров) {

// тело метода

}

тип имя_метода2 (список_параметров) {

// тело метода

}

/ /...

тип имя_методаN (список_параметров) {

// тело метода

}

}

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

Ниже приведен пример класса, содержащего переменные примитивных типов:

class MyClass

{

int i=5;//переменная экземпляра класса

final int YEAR = 2014;//константа

double d; //переменная экземпляра класса

public void myMethod(int x, double y)//параметры метода

{

int a1,a2; //локальные переменные метода

...

}

}

В примере создан класс с именем MyClass, в котором объявлены переменные и метод myMethod(). Метод содержит список параметров – переменные x и y. В теле метода объявлены переменные a1 и a2. Обратите внимание на то, что переменные, объявленные внутри тела метода или входящие в список параметров, передаваемых в методы класса, являются локальными переменными. В нашем примере локальными переменными являются переменные x, y, a1 и a2. Переменные же объявленные в теле класса, но вне методов – это глобальные переменные. Переменные с модификатором final являются константами. Модификатор final можно использовать для переменной, объявленной в методе, а также для параметра метода.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: