/
javapractice
/
JavaPractice
Обзор
Документация
Войти
/
javapractice
/
JavaPractice
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
2
CI/CD
Аналитика
develop
SOLID/src/main/java/lsp/mediaPlayer/wrongSchema/App.java
31 строка
1 KB
Zexa91x0
SOLID - LSP
29 май 2021, 18:00
29 май 2021, 18:00
7933698
Код
Авторство
О чём код?
package lsp.mediaPlayer.wrongSchema; import java.util.ArrayList; import java.util.List; /** * LSP - должна быть возможность вместо базового типа подставить любой из его потомков . для применения полиморфизма <br> * потомок должен расширять функционал родителя но не изменить. Смотри пример ниже */ public class App { public static void main(String[] args) throws Exception { List<MediaPlayer> allPlayers = new ArrayList<>(); allPlayers.add(new VLCMediaPlayer()); allPlayers.add(new TorMediaPlayer()); playVideoInAllMediaplayers(allPlayers); System.out.println("_________________"); allPlayers.add(new WinAmpMediaPlayer()); playVideoInAllMediaplayers(allPlayers); } private static void playVideoInAllMediaplayers(List<MediaPlayer> allPlayers) throws Exception { for (MediaPlayer mediaPlayer : allPlayers ) { mediaPlayer.playVideo(); } } }