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

Модиф КЛАСС 3,23

Модификаторы - это ключевые слова в Java, которые сообщают компилятору информацию о природе кода, данных или классов.

При описании классов возможное использование модификаторов обьявления классов.они уточняют как могут изпользоваться далее

public — доступ открыт отовсюду и для всех; можем объявлять ссылки на этот класс в любом коде и в приделах пакета

abstract. Он позволяет объявить класс неполноценным и не предназначенным для создания его экземпляров. Классы с таким модификатором можно только наследовать.(тоесть абстрактный).обьекты создавать нельзя.Это обуславливается наличием у класса абстрактных методов,которые должны быть переопределены.
private — класс доступен только в пределах данного пакета;

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

strictfp позволяет организовать работу класс с числами с плавающей точкой единообразной для всех виртуальных машин Java.

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

 

Создание обьекта 7

Объект-инкапсулированая абстратная еденица которая включает информацию о состоянии и четко определяет множество протокола доступа.

В ява нет переменой типа указатель,только ссылка.

Указатель указывает только на область памяти,где создается и находиться обьект.

Ссылочные значения (часто называемые ссылками) - это указатели на объекты, и специальная ссылка типа null, которая не ссылается ни на какой объект.

Body sum=new Body()

 

 

Кострукторы 8

класс может -гарантировать инициализацию каждого объекта, обеспечив специальный метод, называемый конструктором. Если класс имеет конструктор, Java автоматически вызывает конструктор, когда создается объект,

имя конструктора совпадает с именем класса.

Как и любой метод, может иметь сигнатуру, которые-позволят вам указать способ создания объекта.

classa Body{…

Body(){…}

Body(x,y){..}}

Поля КЛАСС 4,5,22

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

Могут не являться ссылками а быть примитивного типа

<мод> тип имя = значение

При описании полей классов возможное использование модификаторов:

public-разрешает полный доступ к даному полю(видимость в не пакета)

protected — здесь доступ разграничивается для всех "родных" (т.е. производных или родительских) классов данного класса;

final — поле не может быть изменено в ходе программы
private — доступен только в пределах данного класса;

static – поле является свойством всего класса(изменение поля в часте программы влечет к изменению во всей программе)

volatile — поле изменено любым выполняющим потоком команд
transient —представления поля в виде последовательности байтов данных;

 

 

Управление доступа 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