Встречается на собеседованиях • сегодня
Почему не стоит останавливаться на конкретной реализации интерфейса
Жесткая привязка к конкретной реализации нарушает принцип подстановки Барбары Лисков (LSP) и усложняет поддержку кода. Лучше зависеть от абстракций (интерфейсов), чем от деталей реализации. Это позволяет:
1. Легко менять реализацию без изменения клиентского кода
2. Упрощать тестирование (можно подменить реальную реализацию mock-объектом)
3. Соблюдать Open-Closed Principle (расширяемость без модификации)
Пример плохого подхода:
```java
// Жесткая привязка к ArrayList
public class Processor {
private ArrayList items = new ArrayList<>();
}
```
Лучший вариант:
```java
public class Processor {
private List items;
public Processor(List items) {
this.items = items;
}
}
```
Теперь можно передавать любую реализацию List: ArrayList, LinkedList, или даже кастомную.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы