- Назовите основные принципы ООП.
- Расскажите про основные понятия ООП: «класс», «объект», «интерфейс».
- Дайте определение понятию «интерфейс». Какие модификаторы по умолчанию имеют поля и методы интерфейсов?
- Чем абстрактный класс отличается от интерфейса? В каких случаях следует использовать абстрактный класс, а в каких интерфейс?
- Почему в некоторых интерфейсах вообще не определяют методов?
- Что такое статическое и динамическое связывание?
- Чем различаются JRE, JVM и JDK?
- Какие существуют модификаторы доступа?
- Какими значениями инициализируются переменные по умолчанию?
- Можно ли сузить уровень доступа/тип возвращаемого значения при переопределении метода?
- Возможно ли при переопределении метода изменить: модификатор доступа; возвращаемый тип; тип аргумента или их количество; имена аргументов или их порядок, убирать, добавлять, изменять порядок следования элементов секции
throws? - Можно ли объявить метод абстрактным и статическим одновременно?
- Зачем нужен
equals(). Чем он отличается от операции==? - Какая связь между
hashCode()иequals()? - Если
equals()переопределен, есть ли какие-либо другие методы, которые следует переопределить? - Что будет, если переопределить
equals()не переопределяяhashCode()? Какие могут возникнуть проблемы? - Опишите иерархию исключений.
- Какие виды исключений в Java вы знаете, чем они отличаются?
- Что такое checked и unchecked exception?
- Может ли один блок
catchотлавливать сразу несколько исключений? - Чем отличается
ArrayListотLinkedList? В каких случаях лучше использовать первый, а в каких второй? - Как устроен
HashMap? - Как работает
HashMapпри попытке сохранить в него два элемента по ключам с одинаковымhashCode(), но для которыхequals() == false? - Какое начальное количество корзин в
HashMap? - Какова оценка временной сложности операций над элементами из
HashMap? Гарантирует лиHashMapуказанную сложность выборки элемента? - Возможна ли ситуация, когда
HashMapвыродится в список даже с ключами имеющими разныеhashCode()? - Что такое «шаблон проектирования»?
- Типы шаблонов проектирования.
- Приведите примеры основных шаблонов проектирования.
- Приведите примеры порождающих шаблонов проектирования.
- Приведите примеры структурных шаблонов проектирования.
- Приведите примеры поведенческих шаблонов проектирования.
- Что такое «антипаттерн»? Какие антипаттерны вы знаете?
- What Is Spring Framework?
- What Is Dependency Injection?
- How Can We Inject Beans in Spring?
- Which Is the Best Way of Injecting Beans and Why?
- What Is a Spring Bean?
- What Is the Default Bean Scope in Spring Framework?
- How to Define the Scope of a Bean?
- What Does the Spring Bean Life Cycle Look Like?
- Can We Have Multiple Spring Configuration Files in One Project?
- What Is Spring Boot?