From 4c819db6ddc8696ff9d5d4cd31e65f3bca77184f Mon Sep 17 00:00:00 2001 From: sofiia Date: Mon, 1 Sep 2025 14:26:15 +0200 Subject: [PATCH] add class Machine and classes Truck, Bulldozer, and Excavator with methods doWork() and stopWork(). --- src/main/java/core/basesyntax/Bulldozer.java | 12 ++++++++++++ src/main/java/core/basesyntax/Excavator.java | 12 ++++++++++++ src/main/java/core/basesyntax/Machine.java | 6 ++++++ src/main/java/core/basesyntax/MainApp.java | 8 +++++++- src/main/java/core/basesyntax/Truck.java | 12 ++++++++++++ 5 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 src/main/java/core/basesyntax/Bulldozer.java create mode 100644 src/main/java/core/basesyntax/Excavator.java create mode 100644 src/main/java/core/basesyntax/Machine.java create mode 100644 src/main/java/core/basesyntax/Truck.java diff --git a/src/main/java/core/basesyntax/Bulldozer.java b/src/main/java/core/basesyntax/Bulldozer.java new file mode 100644 index 000000000..1704fd929 --- /dev/null +++ b/src/main/java/core/basesyntax/Bulldozer.java @@ -0,0 +1,12 @@ +package core.basesyntax; + +public class Bulldozer extends Machine{ + @Override + public void doWork(){ + System.out.println("Bulldozer started work"); + }; + @Override + public void stopWork(){ + System.out.println("Bulldozer stopped work"); + } +} diff --git a/src/main/java/core/basesyntax/Excavator.java b/src/main/java/core/basesyntax/Excavator.java new file mode 100644 index 000000000..b7a8ed8f5 --- /dev/null +++ b/src/main/java/core/basesyntax/Excavator.java @@ -0,0 +1,12 @@ +package core.basesyntax; + +public class Excavator extends Machine{ + @Override + public void doWork(){ + System.out.println("Excavator started work"); + }; + @Override + public void stopWork(){ + System.out.println("Excavator stopped work"); + } +} diff --git a/src/main/java/core/basesyntax/Machine.java b/src/main/java/core/basesyntax/Machine.java new file mode 100644 index 000000000..5a62715c2 --- /dev/null +++ b/src/main/java/core/basesyntax/Machine.java @@ -0,0 +1,6 @@ +package core.basesyntax; + +public abstract class Machine { + public abstract void doWork(); + public abstract void stopWork(); +} diff --git a/src/main/java/core/basesyntax/MainApp.java b/src/main/java/core/basesyntax/MainApp.java index f99e9a019..4b3e175b9 100644 --- a/src/main/java/core/basesyntax/MainApp.java +++ b/src/main/java/core/basesyntax/MainApp.java @@ -1,5 +1,11 @@ package core.basesyntax; public class MainApp { - + public static void main(String[] args) { + Machine[] machines = new Machine[]{new Truck(), new Bulldozer(), new Excavator()}; + for(int i = 0; i < machines.length; i++) { + machines[i].doWork(); + machines[i].stopWork(); + } + } } diff --git a/src/main/java/core/basesyntax/Truck.java b/src/main/java/core/basesyntax/Truck.java new file mode 100644 index 000000000..0f23563a7 --- /dev/null +++ b/src/main/java/core/basesyntax/Truck.java @@ -0,0 +1,12 @@ +package core.basesyntax; + +public class Truck extends Machine{ + @Override + public void doWork(){ + System.out.println("Truck started work"); + }; + @Override + public void stopWork(){ + System.out.println("Truck stopped work"); + } +}