Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OOP_otvety.docx
Скачиваний:
2
Добавлен:
16.09.2019
Размер:
37 Кб
Скачать

Управление доступа 6

Модификаторы доступа определяют, могут ли классы использовать разнообразные элементы (сами классы, переменные-поля классов, методы классов и коснтрукторы) и как они могут их использовать.

четыре уровня доступа имеют только элементы типов и конструкторы. Это:

  • public;

  • private;

  • protected;

  • если не указан ни один из этих трех типов, то уровень доступа определяется по умолчанию (default).

Блоки инициализации 9

Это обычный блок заключёный в скобки{}размещенный внутри класса

Бывает несколько

СТ.бк нужны для инициализации ст.полей.перед {}записыв слово Static.в них нет исключений

Методы класса 10,23

Процедуры описивающие поведение обьекта,тоесть его функции.

Обьявление включает сигнатуру(название,список передаваемых параметров(кол-во,тип))

<мод>тип возвр.знач.Имя(вход.парам.){тело мет}

Модификаторы: package(внутри пакета), protected ,public, static,;abstract(метод должен быть переопределён), final,

native(применяеться к методам родственным :С++,С)

используються несколько,но только в порядке перечесня

Вызов метода 11

Осуществляеться также как к полям методам

Вызыв.ссылка на обьект,метод,параметры

<обьект>.метод(параметры)

Обращение к методу являеться сообщением к тому или иному обьекту

В ЯВА метод всегда вызываеться с определёным количеством параметров.

Два способа передачи:

1.передача по значению(формальный параметр,изменение его не влияет на параметр вызова)

2.передача по ссылке(обращаеться к фактическому параметру,указаному в вызове)

Возврощение:если в заголовке метода указан тип возвращаемого значения,то в теле метода обьязательно должно встречаться return выражение,которое выполняет:

1.предписывает выход из тела метода

2.возвращаемое значение указываеться сразу после слова РЕТУРН

This 13

Может использоваться как ссылка на обьект или для того что бы различять разные поля с одинаковыми именами

This.имя=имя

ссылка на экземпляр класса

Не может использоваться в статических методах(статич. Методы пренадлежат классу в целом,а не екземпляру класса поэто ему некада ссылаться)

Конструкторы субкласса 16

Подкласс может вызвать метод конструктора,определенный его суперклассом,при помощи следующей формы

Супер(входные параметры)

Порядок иниц. полей субкласса 17

1.вызов конструктора суперкласса

2.присваивание исходных значений поля которые обьявлены в субклассе

3.выполнение инструкциы суабкласса

Перегруженные методы 14

два метода класса (либо объявленные в одном и том же классе, либо наследованы одним классом, либо один объявлен в классе, а другой наследован тем же самым классом) с одинаковым именем,но с разной сигнатурой

Этот факт не причиняет никаких трудностей и никогда не приводит к ошибкам времени компиляции.

Main это метод в Ява который запускает программу.(должен присутсвовать в классе)

Должен быть открытым,статическим,без возвращяемого значения и с входным параметром типа String(массив строк)

native(применяеться к методам родственным :С++имеет доступ к системным ресурсам,С)

public native int meth()без тела

делает программу непереносным(код содержиться в ДЛЛ файле) и существеный риск защиты

Наследование 15

Позволяет создавать иерархические класификации.используя насл. Можно создать главный класс,который определяет свойства общие для набора связаных элементов.класс который уаследован-суперкласс.класс который выполняет наследование – субклассом,он наследует все переменые и методы суперкласса и прибавляет свои.

При наслед.в субклассе мы используем extends

Переопределение методов класса 18

В иерархии класса,если метод в подклассе имеет такое же имя и сигнатуру как и метод в его супер классе-то метод переопределяет метод в субклассе.когда переопределенный метод вызываеться в подклассе он будет всегда обращаться к версии этого метода определенной подклассом.версия метода определёного супер класссом будет скрыта

Скрытие полей и доступ к 19 наслед.членам

Переопеделять поля класса нельзя .Тут поле субкласса при этом скрываеться полем порождёного класса.это сделано для безопасного

Добавления в порожденный класс.

Скрытое поле не исчезает к нему обратиться можно спомощю ссылки

Хоть подкласс включает все элементы своего супуркласса,он не может обращаться к тем элементам суперкласса,которые были обявлены как private.

СУПЕР 20

Когда подклассвызывает супер,он вызывает конструктор своего непосредственого суперкласса.СУПЕР()всегла обращаеться к своим непосредственному суперклассу вызывающего класса.это справедливо даже в многоуровневой иерархии.кроме того СУПЕР()всегда должен быть первым оператором,виполняемым внутри конструктора подкласса.

Используеться в 2 формах:

СУПЕР(вход.парам):

СУПЕР.мембер-переменой экземпляра или методом:как ссылка(зис)только на суперкласс.применяеться когда члены скрыты

Переобразование типов 21

Есть совместимы(с байт в стринг)Автоматическое преобразование(условия1.типы совместины,2.целовой тип больше чем исходный) и несовместимы типы(инт в байт)приведение несовместимых типов:сужающим преобразованием(косаеться розрядности)приведение типов или явное преобразование(через ключ слово валуе)

String S=br.readLine();

double u= Double.valueOf(S). doubleValue();

int I;

double u= Double.valueOf(I). doubleValue();

S.toCharArray();

Проэктирование класса 26

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]