Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

Презентация на тему Особенности объектной модели Java. (Лекция 5)

Содержание

Содержание
Лекция 5Особенности объектной модели Java Содержание Статические элементыСтатические элементыОтносятся к классу в целом, а не к экземплярам класса Инициализация и вызовclass StudentGroup {		public static int totalCount;		public static int getCount() {			return Инициализация и вызовStudentGroup.totalCount = 24;StudentGroup group4350 = new StudentGroup();int i = group4350.getCount();System.out.println(i); Статический и динамический контекстСтатический контекстСтатические методы и инициализаторыИнициализаторы статических полейДинамический контекстВсе прочие ОсобенностиОбращение к полям и методамПо простому имени – в порядке следования; по Ключевые слова this и superКлючевое слово this возвращает ссылку на объект, в Ключевые слова this и superКлючевое слово super позволяет обратиться к методам родительского Абстрактные классы и методыАбстрактный метод не имеет реализацииобязательно должен быть реализован в Абстрактный классЗаголовок класса[модификатор доступа] 	abstract final class 			 {[тело класса]}Объявление метода	abstract		private | ИнтерфейсКласс, содержащий только абстрактные методы = интерфейсНе может быть инстанциирован[модификатор доступа] 	interface ИнтерфейсСпособ реализации множественного наследованияМощный способ организации полиморфных программТип переменной:«Абстрактный класс»Неабстрактный наследник «Интерфейс» Структура  объявления классаЗаголовок класса[модификатор доступа] 	[final] 		class 			[extends ]			[implements [, …]] {[тело класса]} ПолиморфизмСсылочный тип обладает элементами:Непосредственно объявленными в его телеОбъявленными в родительском классе или МассивМассив – набор однотипных значенийОтдельный элемент массива не имеет имениОбъявление массиваint a[];int[] a;int[] a[];int a[][]; Размер массиваЗадается при созданииint a[] = new int[5];Доступна в специальном свойстве int Содержание
Слайды презентации

Слайд 2 Содержание

Содержание

Слайд 3 Статические элементы
Статические элементы
Относятся к классу в целом, а

Статические элементыСтатические элементыОтносятся к классу в целом, а не к экземплярам

не к экземплярам класса (объектам)
Существуют в единственном экземпляре независимо

от числа созданных объектов
Обращение – через имя класса, а не через ссылку на объект

Слайд 4 Инициализация и вызов
class StudentGroup {
public static int totalCount;

public

Инициализация и вызовclass StudentGroup {		public static int totalCount;		public static int getCount()

static int getCount() {
return totalCount;
}

public static void sessionFailed() {
totalCount--;
}
}


Слайд 5 Инициализация и вызов
StudentGroup.totalCount = 24;

StudentGroup group4350 = new

Инициализация и вызовStudentGroup.totalCount = 24;StudentGroup group4350 = new StudentGroup();int i =

StudentGroup();
int i = group4350.getCount();
System.out.println(i); // ????

group4350 = null;
group4350.sessionFailed(); //

????
System.out.println(group4350.totalCount);
// ????
System.out.println(StudentGroup.totalCount);
// ????

Слайд 6 Статический и динамический контекст
Статический контекст
Статические методы и инициализаторы
Инициализаторы

Статический и динамический контекстСтатический контекстСтатические методы и инициализаторыИнициализаторы статических полейДинамический контекстВсе

статических полей
Динамический контекст
Все прочие части кода

В динамическом контексте работа

всегда идет с экземпляром класса; в статическом – с самим классом

Слайд 7 Особенности
Обращение к полям и методам
По простому имени –

ОсобенностиОбращение к полям и методамПо простому имени – в порядке следования;

в порядке следования; по составному имени – в любом

порядке
Обращение из статического контекста в динамический – запрещено

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
Ключевое слово this возвращает

Ключевые слова this и superКлючевое слово this возвращает ссылку на объект,

ссылку на объект, в методе которого оно использовано
Использования this:
Передача

данного объекта по ссылке
Разрешение «затемняющих» объявлений
Обращение к полям, объявляемых ниже
Вызов других конструкторов класса

Слайд 9 Ключевые слова this и super
Ключевое слово super позволяет

Ключевые слова this и superКлючевое слово super позволяет обратиться к методам

обратиться к методам родительского объекта:
Вызов конструктора родительского класса
Вызов переопределенного

метода родительского класса

Слайд 10 Абстрактные классы и методы
Абстрактный метод
не имеет реализации
обязательно

Абстрактные классы и методыАбстрактный метод не имеет реализацииобязательно должен быть реализован

должен быть реализован в наследниках
При наличии абстрактных методов класс

обязательно объявляется как абстрактный
Абстрактный класс
может иметь абстрактные методы
не может быть инстанциирован

Слайд 11 Абстрактный класс
Заголовок класса
[модификатор доступа]
abstract final class

Абстрактный классЗаголовок класса[модификатор доступа] 	abstract final class 			 {[тело класса]}Объявление метода	abstract		private

класса>
{[тело класса]}
Объявление метода
abstract
private | native | static


<тип> <имя>([параметры]);


Слайд 12 Интерфейс
Класс, содержащий только абстрактные методы = интерфейс
Не может

ИнтерфейсКласс, содержащий только абстрактные методы = интерфейсНе может быть инстанциирован[модификатор доступа]

быть инстанциирован


[модификатор доступа]
interface
{[тело интерфейса]}
Тело

интерфейса состоит только из абстрактных методов

Слайд 13 Интерфейс
Способ реализации множественного наследования
Мощный способ организации полиморфных программ
Тип

ИнтерфейсСпособ реализации множественного наследованияМощный способ организации полиморфных программТип переменной:«Абстрактный класс»Неабстрактный наследник

переменной:
«Абстрактный класс»
Неабстрактный наследник
«Интерфейс» – классы, реализующие его:
напрямую (implements)
наследуемые

от реализующих классов
реализующие наследников интерфейса

Слайд 14 Структура объявления класса
Заголовок класса
[модификатор доступа]
[final]
class

Структура объявления классаЗаголовок класса[модификатор доступа] 	[final] 		class 			[extends ]			[implements [, …]] {[тело класса]}

класса>
[extends ]
[implements [, …]] {[тело класса]}


Слайд 15 Полиморфизм
Ссылочный тип обладает элементами:
Непосредственно объявленными в его теле
Объявленными

ПолиморфизмСсылочный тип обладает элементами:Непосредственно объявленными в его телеОбъявленными в родительском классе

в родительском классе или интерфейсах, кроме:
private-элементов
«скрытых» одноименными элементами
переопределенных методов
Модификаторы

доступа можно только «расширять» (сужать запрещено)

Слайд 16 Массив
Массив – набор однотипных значений
Отдельный элемент массива не

МассивМассив – набор однотипных значенийОтдельный элемент массива не имеет имениОбъявление массиваint a[];int[] a;int[] a[];int a[][];

имеет имени
Объявление массива
int a[];
int[] a;
int[] a[];
int a[][];


Слайд 17 Размер массива
Задается при создании
int a[] = new int[5];
Доступна

Размер массиваЗадается при созданииint a[] = new int[5];Доступна в специальном свойстве

в специальном свойстве
int length = a.length;
Индексация начинается с

«0»
Ошибка индексации – ошибка времени исполнения программы

  • Имя файла: osobennosti-obektnoy-modeli-java-lektsiya-5.pptx
  • Количество просмотров: 74
  • Количество скачиваний: 0