/
spirzen
/
it-code-examples
Обзор
Документация
Войти
/
spirzen
/
it-code-examples
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
examples/java/java-503-18-020/main.java
54 строки
1 KB
Spirzen
Code migration pack
09 июн 2026, 01:41
09 июн 2026, 01:41
cebc284
Код
Авторство
О чём код?
// Интерфейс двигателя interface Engine { void start(); void stop(); } // Конкретная реализация: бензиновый двигатель class GasEngine implements Engine { @Override public void start() { System.out.println("Запуск бензинового двигателя"); } @Override public void stop() { System.out.println("Остановка бензинового двигателя"); } } // Конкретная реализация: электродвигатель class ElectricEngine implements Engine { @Override public void start() { System.out.println("Запуск электродвигателя"); } @Override public void stop() { System.out.println("Остановка электродвигателя"); } } // Автомобиль "имеет" двигатель — композиция class Car { private Engine engine; // Двигатель передаётся при создании — гибкость! public Car(Engine engine) { this.engine = engine; } public void start() { engine.start(); } public void stop() { engine.stop(); } // Возможность заменить двигатель во время выполнения public void setEngine(Engine engine) { this.engine = engine; } }