Читайте также:
|
|
Особенности реализации основных фундаментальных свойств ООП в Java.
· Основан на синтаксисе С
· Развитая система типов («абстракция», «инкапсуляция», «типизация»)
· Одиночное наследование классов и множественное наследование интерфейсов («иерархия»)
· Развитая система пакетов («модульность»)
· Обработка исключений
· Автоматическая сборка мусора
· Обеспечение конкурентного доступа к данным при многопоточности («параллелизм»)
· Отсутствие низкоуровневого управления памятью
· Развитая библиотека (с поддержкой «сохраняемости»)
Понятие и определение класса.
Класс – это базовая конструкция Java; шаблон для объекта. Объект – это экземпляр класса. Данные класса называются переменными экземпляра. Код класса – это методы.
Пример класса:
class HelloWorld {
public static void main(String args[])
{ System.out.println(“Моя первая Java-программа“); }}
Динамическая инициализация объектов.
Получение объектов класса − это двухшаговый процесс.
Во-первых, нужно объявить переменную типа «класс». Она не определяет объект. Это просто переменная, которая может ссылаться на объект.
Во-вторых, нужно получить актуальную, физическую копию объекта и назначать ее этой переменной. Это можно сделать с помощью операции new.
Операция new распределяет динамически (т.е. во время выполнения) память для объекта и возвращает ссылку на нее. Данная ссылка является адресом ячейки памяти, выделенной объекту вышеуказанной операцией. Затем эта ссылка сохраняется в переменной. Таким образом, в Java все объекты класса должны быть распределены динамически.
Box mybox = new Box();
Box mybox;
mybox = new Box();
Модификаторы класса.
Выделяют следующие модификаторы класса.
рublic – класс доступен для использования или расширения всем объектам вне зависимости от пакета или от каталога. Рublic-классы должны хранится в файлах с именем имя_класса.java.
friendly – модификатор класса по умолчанию, если модификатор не определен явно для класса. Такой класс доступен только для объектов, находящихся в том же пакете.
final – класс не может иметь подклассов, то есть производных классов.
abstract – класс, в котором объявлен хотя бы один абстрактный метод. Для таких классов нельзя создавать объекты. Такие классы используются для производных классов.
Ограничения доступа к элементам класса.
Атрибут | Разрешенный доступ | |
Отсутствие атрибута доступа | Из любого класса в том же пакете | |
public | Из любого класса откуда угодно | |
private | Никакого доступа вне класса | |
protected | Из любого класса в том же пакете и из любого подкласса где угодно |
1) Public- метод или данные класса, которые имеют рublic доступы из любого места программы;
Private- нет никакого доступа к переменной этого класса;
2) Protected- переменная доступна из любого класса в том же пакете (папке) и из любого подкласса, где угодно;
3) Отсутствие атрибута доступа- переменная видна из любого класса в том же пакете.
Дата добавления: 2015-09-11; просмотров: 93 | Поможем написать вашу работу | Нарушение авторских прав |
<== предыдущая лекция | | | следующая лекция ==> |
Дополнительный материал. Работа с датой и временем | | | Методы класса. Метод main(). Конструкторы класса. |