16 часов назад
💡 SOLID: принцип подстановки Лисков (LSP) говорит
: 🔁 объекты базового класса должны без проблем заменяться объектами его подклассов. Если подкласс меняет поведение так, что код начинает ломаться — дизайн неправильный. ❌ Плохой пример У нас есть Vehicle с методом startEngine(). Мы наследуем Bicycle, но… у велосипеда нет двигателя — и метод бросает исключение. Такая иерархия: class Vehicle { public void startEngine() { ... } } class Bicycle extends Vehicle { @Override public void startEngine() { throw new UnsupportedOperationException("Bicycles...