Экзамен ООП | Блок 1 Flashcards

1
Q

Что такое ООП?

A

Это методология (парадигма) программирования, согласно которой вся программа представляется как набор взаимодействующих между собой Объектов, каждый из которых является экземпляром определенного Класса и обладает определенными Данными и набором доступных действий (Методов).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Базовые концепции ООП?

A

Абстракция
Инкапсуляция
Наследование
Полиморфизм

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Укажите из каких элементов состоит класс. Расскажите о каждом из них.

A

Класс состоит из:
Поля класса - это переменные и константы, объявленные на уровне класса.
Конструкторы - специальные методы, инициализирующие поля класса, при создании экземпляра этого класса (объекта).
Методы класса - функция или процедура, принадлежащая классу.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Что такое конструктор?

A

Это специальный метод, который отвечает за создание нового объекта и совершает инициализацию полей. Он не имеет возвращаемого значения и называется так же как Класс.

Один класс может иметь несколько конструкторов, отличающихся набором параметров (сигнатурой метода).

Конструктор, присваивающий значения всем полям модели данных называется Каноническим.

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Можно ли наследовать конструктор?

A

Конструкторы в Java не наследуются, но могут быть вызваны с помощью метода super(). В этот метод должны быть переданы параметры суперкласса (родительского класса).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Что такое перегрузка конструктора?

A

Перегрузкой метода называется создание метода с тем же именем, но с отличающейся “Сигнатурой метода”, т.е. с другим количеством или типом передаваемых в метод параметров. Точно так же как и методы, можно перегружать конструкторы.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Можно ли применить модификаторы доступа к конструкторам?

A

Да, конструктор можно сделать private. Такой подход используется в некоторых паттернах проектирования (singleton). Либо в случае, когда мы хотим запретить создание экземпляров класса.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly