Встречается на собеседованиях • сегодня

Какой принцип Solid нарушится, при добавлении нового метода в унаследованный класс

Нарушается Принцип подстановки Барбары Лисков (LSP) из SOLID. Если новый метод в подклассе изменяет поведение родительского класса или требует проверки типа (instanceof), это ломает полиморфизм.

Пример нарушения:

java
class Bird {
    void fly() { /* ... */ }
}

class Penguin extends Bird {
    @Override
    void fly() {
        throw new UnsupportedOperationException("Penguins can't fly!");
    }
}

Здесь Penguin нарушает LSP, так как клиентский код, ожидающий fly(), сломается. Решение — пересмотреть иерархию (например, выделить Flyable интерфейс).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы