Слайд 3
![Классы и объекты Класс – это конструкция языка программирования Java, которая](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1290927/slide-2.jpg)
Классы и объекты
Класс – это конструкция языка программирования Java, которая
объединяет в себе переменные и функции (методы), которая может определять новый тип данных, который можно использовать для создания объектов этого типа.
В отличие от С++, в Java объявление класса совмещено с его определением, то есть методы класса нужно реализовывать (писать код тела) сразу же при их описании. Как правило, в Java класс описывается в отдельном файле.
Модификаторы доступа - это ключевые слова, которые определяют доступность класса или его членов.
В языке Java предусмотрены следующие модификаторы доступа: public, protected, private.
Для членов класса (полей и методов) разрешено использование всех указанных выше модификаторов.
Поля и методы класса, помеченные как public, доступны через объект по имени из классов текущего пакета и из классов других пакетов (если класс, содержащий public поля и методы, имеет уровень доступа public).
Поля и методы класса, помеченные как protected, доступны по имени только из методов своего класса и классов потомков, даже если классы потомки находятся в другом пакете. Также protected поля и protected методы доступны через объект по имени для любого класса текущего пакета.
Private-поля и private методы доступны по имени только из методов своего класса.
Если не указан ни один из модификаторов доступа, то считается что элементы класса (поля и методы) имеют пакетный уровень доступа, то есть доступны по имени только из методов своего класса и классов потомков текущего пакета, а также доступны через объект по имени для любого класса текущего пакета
Для классов верхнего уровня, т.е. не вложенных (внутренних), применимы только общедоступный (public) и пакетный уровни доступа. Если класс объявлен как public, то к нему можно получить доступ отовсюду. Если же модификатор доступа не указан, то класс имеет пакетную область видимости и доступ к нему имеют только классы из того же пакета.