305 читали · 2 года назад
Java 1278. Что такое Liskov’s Substitution Principle (Принцип подстановки Барбары Лисков)?
1278. Что такое Liskov’s Substitution Principle (Принцип подстановки Барбары Лисков)? Принцип подстановки Барбары Лисков (Liskov's Substitution Principle, LSP) - это принцип SOLID-архитектуры, который гласит, что объекты в программе должны быть заменяемыми их наследниками без изменения корректности программы. Пример на Java: class Bird { public void fly() { // выполнение полета } } class Duck extends Bird { public void swim() { // выполнение плавания } } class Ostrich extends Bird...
4 месяца назад
💡 SOLID: принцип подстановки Лисков (LSP) говорит
: 🔁 объекты базового класса должны без проблем заменяться объектами его подклассов. Если подкласс меняет поведение так, что код начинает ломаться — дизайн неправильный. ❌ Плохой пример У нас есть Vehicle с методом startEngine(). Мы наследуем Bicycle, но… у велосипеда нет двигателя — и метод бросает исключение. Такая иерархия: class Vehicle { public void startEngine() { ... } } class Bicycle extends Vehicle { @Override public void startEngine() { throw new UnsupportedOperationException("Bicycles...