/
javapractice
/
JavaPractice
Обзор
Документация
Войти
/
javapractice
/
JavaPractice
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
2
CI/CD
Аналитика
develop
SOLID/src/main/java/lsp/example/App.java
23 строки
1 KB
Zexa91x0
SOLID - LSP
29 май 2021, 18:00
29 май 2021, 18:00
7933698
Код
Авторство
О чём код?
package lsp.example; /** * LSP - должна быть возможность вместо базового типа подставить любой из его потомков . для применения полиморфизма <br> * потомок должен расширять функционал родителя но не изменить. Смотри пример ниже */ public class App { public static void main(String[] args) { // Пример : // создаем объект родительского класса и проверяем его работу - работает // Parent parent = new Parent(); // parent.doSomething(); // согласно принципу LSP мы должны уметь в любой момент // заменить родителя на потомка без потери функционала. // пробуем заменить и получаем ошибку в переопределенном методе Child child = new Child(); child.doSomething(); // не работает - это нарушение принципа поскольку функционал изменился. } }