Оцените презентацию от 1 до 5 баллов!
Тип файла:
ppt / pptx (powerpoint)
Всего слайдов:
18 слайдов
Для класса:
1,2,3,4,5,6,7,8,9,10,11
Размер файла:
88.00 kB
Просмотров:
72
Скачиваний:
0
Автор:
неизвестен
Слайды и текст к этой презентации:
№1 слайд![Лекция Особенности объектной](/documents_6/8537860b575bcb6ea9024c89f179401c/img0.jpg)
Содержание слайда: Лекция 5
Особенности объектной модели Java
№2 слайд![Содержание Статические](/documents_6/8537860b575bcb6ea9024c89f179401c/img1.jpg)
Содержание слайда: Содержание
Статические элементы
Абстрактные методы
Интерфейсы
Полиморфизм
Массивы
№3 слайд![Статические элементы](/documents_6/8537860b575bcb6ea9024c89f179401c/img2.jpg)
Содержание слайда: Статические элементы
Статические элементы
Относятся к классу в целом, а не к экземплярам класса (объектам)
Существуют в единственном экземпляре независимо от числа созданных объектов
Обращение – через имя класса, а не через ссылку на объект
№4 слайд![Инициализация и вызов class](/documents_6/8537860b575bcb6ea9024c89f179401c/img3.jpg)
Содержание слайда: Инициализация и вызов
class StudentGroup {
public static int totalCount;
public static int getCount() {
return totalCount;
}
public static void sessionFailed() {
totalCount--;
}
}
№5 слайд![Инициализация и вызов](/documents_6/8537860b575bcb6ea9024c89f179401c/img4.jpg)
Содержание слайда: Инициализация и вызов
StudentGroup.totalCount = 24;
StudentGroup group4350 = new StudentGroup();
int i = group4350.getCount();
System.out.println(i); // ????
group4350 = null;
group4350.sessionFailed(); // ????
System.out.println(group4350.totalCount);
// ????
System.out.println(StudentGroup.totalCount);
// ????
№6 слайд![Статический и динамический](/documents_6/8537860b575bcb6ea9024c89f179401c/img5.jpg)
Содержание слайда: Статический и динамический контекст
Статический контекст
Статические методы и инициализаторы
Инициализаторы статических полей
Динамический контекст
Все прочие части кода
В динамическом контексте работа всегда идет с экземпляром класса; в статическом – с самим классом
№7 слайд![Особенности Обращение к полям](/documents_6/8537860b575bcb6ea9024c89f179401c/img6.jpg)
Содержание слайда: Особенности
Обращение к полям и методам
По простому имени – в порядке следования; по составному имени – в любом порядке
Обращение из статического контекста в динамический – запрещено
class StudentGroup {
static int a = b; // ????
static int c = StudentGroup.b;
static int b = 7;
public void process() {}
public static void main (String[] s) {
process(); // ????
}
}
№8 слайд![Ключевые слова this и super](/documents_6/8537860b575bcb6ea9024c89f179401c/img7.jpg)
Содержание слайда: Ключевые слова this и super
Ключевое слово this возвращает ссылку на объект, в методе которого оно использовано
Использования this:
Передача данного объекта по ссылке
Разрешение «затемняющих» объявлений
Обращение к полям, объявляемых ниже
Вызов других конструкторов класса
№9 слайд![Ключевые слова this и super](/documents_6/8537860b575bcb6ea9024c89f179401c/img8.jpg)
Содержание слайда: Ключевые слова this и super
Ключевое слово super позволяет обратиться к методам родительского объекта:
Вызов конструктора родительского класса
Вызов переопределенного метода родительского класса
№10 слайд![Абстрактные классы и методы](/documents_6/8537860b575bcb6ea9024c89f179401c/img9.jpg)
Содержание слайда: Абстрактные классы и методы
Абстрактный метод
не имеет реализации
обязательно должен быть реализован в наследниках
При наличии абстрактных методов класс обязательно объявляется как абстрактный
Абстрактный класс
может иметь абстрактные методы
не может быть инстанциирован
№11 слайд![Абстрактный класс Заголовок](/documents_6/8537860b575bcb6ea9024c89f179401c/img10.jpg)
Содержание слайда: Абстрактный класс
Заголовок класса
[модификатор доступа]
abstract final class <имя класса>
{[тело класса]}
Объявление метода
abstract
private | native | static
<тип> <имя>([параметры]);
№12 слайд![Интерфейс Класс, содержащий](/documents_6/8537860b575bcb6ea9024c89f179401c/img11.jpg)
Содержание слайда: Интерфейс
Класс, содержащий только абстрактные методы = интерфейс
Не может быть инстанциирован
№13 слайд![Интерфейс Способ реализации](/documents_6/8537860b575bcb6ea9024c89f179401c/img12.jpg)
Содержание слайда: Интерфейс
Способ реализации множественного наследования
Мощный способ организации полиморфных программ
Тип переменной:
«Абстрактный класс»
Неабстрактный наследник
«Интерфейс» – классы, реализующие его:
напрямую (implements)
наследуемые от реализующих классов
реализующие наследников интерфейса
№14 слайд![Структура объявления класса](/documents_6/8537860b575bcb6ea9024c89f179401c/img13.jpg)
Содержание слайда: Структура
объявления класса
Заголовок класса
[модификатор доступа]
[final]
class <имя класса>
[extends <имя класса>]
[implements <имя интерфейса>[, …]] {[тело класса]}
№15 слайд![Полиморфизм Ссылочный тип](/documents_6/8537860b575bcb6ea9024c89f179401c/img14.jpg)
Содержание слайда: Полиморфизм
Ссылочный тип обладает элементами:
Непосредственно объявленными в его теле
Объявленными в родительском классе или интерфейсах, кроме:
private-элементов
«скрытых» одноименными элементами
переопределенных методов
Модификаторы доступа можно только «расширять» (сужать запрещено)
№16 слайд![Массив Массив набор](/documents_6/8537860b575bcb6ea9024c89f179401c/img15.jpg)
Содержание слайда: Массив
Массив – набор однотипных значений
Отдельный элемент массива не имеет имени
Объявление массива
int a[];
int[] a;
int[] a[];
int a[][];
№17 слайд![Размер массива Задается при](/documents_6/8537860b575bcb6ea9024c89f179401c/img16.jpg)
Содержание слайда: Размер массива
Задается при создании
int a[] = new int[5];
Доступна в специальном свойстве
int length = a.length;
Индексация начинается с «0»
Ошибка индексации – ошибка времени исполнения программы
№18 слайд![Содержание Статические](/documents_6/8537860b575bcb6ea9024c89f179401c/img17.jpg)
Содержание слайда: Содержание
Статические элементы
Абстрактные методы
Интерфейсы
Полиморфизм
Массивы