Автоматическая сборка мусора
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

 

n В случае нехватки памяти для создания очередного объекта виртуальная машина находит недостижимые объекты и удаляет их

n Процесс сборки мусора можно инициировать принудительно

n Для явного удаления объекта следует утратить все ссылки на этот объект и инициировать  сбор мусора

n Взаимодействие со сборщиком осуществляется через системные классы  java . lang . System  и java . lang . Runtime

 

Вопрос 10 Инициализирующие блоки и выражения классов. Порядок создания экземпляра класса. 41-43 Лекция основные понятия и принципы ООП

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

 

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

· Тело блока инициализации заключается  в фигурные скобки и располагается на одном уровне с полями и методами

· При создании объекта сначала выполняются инициализирующие выражения полей и блоки инициализации (в порядке их описания в теле класса), а потом тело конструктора

 

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

 

class Body {

public long idNum;

public String name = "No Name";

public Body orbits = null;

private static long nextID = 0;

{

idNum = nextID++;

}

Body(String name, Body orbits) {

this.name = name;

this.orbits = orbits;

}

}

 

Статическая инициализация

 

class Primes {

static int[] knownPrimes = new int[4];

static {

knownPrimes[0] = 2;

for (int i=1; i<knownPrimes.length; i++)

knownPrimes[i] = nextPrime(i);

}

//nextPrime() declaration etc.

}

 

n Статический блок инициализации выполняет инициализацию контекста класса

n Вызов статического блока инициализации происходит в процессе загрузки класса в виртуальную машину

 

Вопрос 11 Точка входа программы. Порядок запуска программы. Способы запуска программы. 44-45  Лекция основные понятия и принципы ООП

 

Точка входа программы

 

n Метод

n Статический

n Доступный

n С параметрами-аргументами

n Без возвращаемого значения

 

class Echo {

public static void main(String[] args) {

for (int i = 0; i < args.length; i++)

System.out.println(args[i] + " ");

System . out . println ();

}

}

 

 

Вопрос 12 Инкапсуляция и её реализация. 11, 48-49 Лекция основные понятия и принципы ООП

n Инкапсуляция

    объединение данных и методов их обработки в одну сущность, приводящее к сокрытию реализации класса и отделению его внутреннего представления от внешнего

Реализация инкапсуляции

class Rectangle {

public int width, height;

}

 

n Значения публичных полей могут быть изменены извне объекта без его контроля

n Само по себе публичное поле – не нарушение инкапсуляции, пока…

n С его элементом состояния не связано поведение

n На значение не накладываются ограничения

n Его значение не связано со значениями других полей

 

Реализация инкапсуляции

 

class Rectangle {

private int width, height;

private int area;

public int getWidth() {

return width;

}

public int getHeight() {

return height;

}

public void setWidth(int width) {

this.width = width;

 area = width * height;

}

public void setHeight(int height) {

this.height = height;

area = width * height;

}

public int getArea() {

return area;

}

}

 

n Приватные поля

n Публичные методы доступа

n Разделение внутреннего состояния и внешнего представления

n Сокрытие реализации (например, поля area может и не быть, а площадь может вычисляться прямо в методе getArea ())

 

 

Вопрос 13 Кодировка, структура исходного кода (комментарии, пробелы и лексемы). Виды лексем. 2-7 лекция Лексика языка Java

Кодировка

 

n Java ориентирован на Unicode

n Первые 128 символов почти
идентичны набору ASCII

n Символы Unicode задаются с помощью escape-последовательностей
 \ u 262 f, \ uu 2042, \ uuu 203 d

n Java чувствителен к регистру!

 



Исходный код

 

Исходный код разделяется на:

n Пробелы

l ASCII-символ SP, \u0020, дес. код 32

l ASCII-символ HT, \u0009, дес. код 9

l ASCII-символ FF, \u000c, дес. код 12

l ASCII-символ LF, символ новой строки

l ASCII-символ CR, возврат каретки

l символ CR, за которым сразу следует символ LF

n Комментарии

n Лексемы

 

Комментарии

 

n // Комментарий
Символы после // и до конца текущей строки игнорируются

n /* Комментарий */
Все символы, заключенные между /* и */, игнорируются

n /** Комментарий */
Комментарии документирования

 




Дата: 2019-07-30, просмотров: 238.