Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
49
Добавлен:
12.05.2015
Размер:
1.82 Mб
Скачать

Глава 6

Введение в классы

В основе языка Java лежит класс. Класс — это логическая конструкция, на которой построен весь язык Java, потому что такая конструкция определяет форму и природу объекта. Класс формирует также основу для объектно-ориентированного программирования в Java. Любая концепция, которую вы желаете реализовать в Java-программе, должна быть инкапсулирована в класс.

Из-за того, что класс достаточно фундаментален для Java, данная и следую­щие несколько глав будут посвящены этому важнейшему понятию языка. Здесь вам будут представлены основные элементы класса, и вы узнаете, как класс может использоваться для создания объектов. Вы также познакоми­тесь с методами, конструкторами, и ключевым словом this.

Основы классов

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

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

134 Часть I. Язык Java

Общая форма класса

Когда вы определяете класс, то объявляете его точную форму и природу. Делаете вы это, формируя данные, которые он содержит, и код, который оперирует с этими данными. В то время как очень простые классы могут содержать только код или только данные, наиболее реальные классы содер­жат и то и другое. Код класса определяет интерфейс к его данным.

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

class classname {

type instance-variable!;

type instance-variable2;

/I...

type instance-variableN;

type methodnamel (parameter—list) {

// тело метода } type iaethodname2 (parameter-list) {

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

//... type methodnameN(parameter—list) {

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

Данные или переменные, определенные в классе, называются переменными экземпляра или экземплярными переменными (instance variables). Код содер­жится внутри методов (methods). Все вместе, методы и переменные, опреде­ленные внутри класса, называются членами класса (class members). В боль­шинстве классов на переменные экземпляра воздействуют методы, опреде­ленные в этих классах. Таким образом, именно методы определяют, как могут использоваться данные класса.

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

Все методы имеют ту же общую форму, что метод main ( } , который мы ис­пользовали до сих пор. Однако большинство методов не будут определяться как static или public. Обратите внимание, что общая форма класса не оп-

Соседние файлы в папке JavaLit