From f05979edfa5918bf96b74d888eaaa1711e3b275f Mon Sep 17 00:00:00 2001 From: Ihor Panchenko Date: Tue, 20 Aug 2024 15:50:44 +0300 Subject: [PATCH 1/2] Added an abstract class Machine and three concrete classes that extend it. Overrode the inherited methods. Used them in main methode. --- src/main/java/core/basesyntax/Bulldozer.java | 14 ++++++++++++++ src/main/java/core/basesyntax/Excavator.java | 14 ++++++++++++++ src/main/java/core/basesyntax/Machine.java | 9 +++++++++ src/main/java/core/basesyntax/MainApp.java | 8 +++++++- src/main/java/core/basesyntax/Truck.java | 15 +++++++++++++++ 5 files changed, 59 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..07f4f41e9 --- /dev/null +++ b/src/main/java/core/basesyntax/Bulldozer.java @@ -0,0 +1,14 @@ +package core.basesyntax; + +public class Bulldozer extends Machine { + + @Override + public void doWork() { + System.out.println("Truck started working"); + } + + @Override + public void stopWork() { + System.out.println("Truck stopped working"); + } +} diff --git a/src/main/java/core/basesyntax/Excavator.java b/src/main/java/core/basesyntax/Excavator.java new file mode 100644 index 000000000..b99273aff --- /dev/null +++ b/src/main/java/core/basesyntax/Excavator.java @@ -0,0 +1,14 @@ +package core.basesyntax; + +public class Excavator extends Machine { + + @Override + public void doWork() { + System.out.println("Truck started working"); + } + + @Override + public void stopWork() { + System.out.println("Truck stopped working"); + } +} diff --git a/src/main/java/core/basesyntax/Machine.java b/src/main/java/core/basesyntax/Machine.java new file mode 100644 index 000000000..a69d35319 --- /dev/null +++ b/src/main/java/core/basesyntax/Machine.java @@ -0,0 +1,9 @@ +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..b6e7d0a78 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[] array = new Machine[]{new Truck(), new Bulldozer(), new Excavator()}; + for (int i = 0; i < array.length; i++) { + array[i].doWork(); + array[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..369460ca5 --- /dev/null +++ b/src/main/java/core/basesyntax/Truck.java @@ -0,0 +1,15 @@ +package core.basesyntax; + +public class Truck extends Machine { + + @Override + public void doWork() { + System.out.println("Truck started working"); + } + + @Override + public void stopWork() { + System.out.println("Truck stopped working"); + } +} + From bd73e34fee2a99b2d0e208732ff54521c997adfb Mon Sep 17 00:00:00 2001 From: Ihor Panchenko Date: Tue, 20 Aug 2024 15:52:38 +0300 Subject: [PATCH 2/2] Added an abstract class Machine and three concrete classes that extend it. Overrode the inherited methods. Used them in main methode. --- src/main/java/core/basesyntax/Bulldozer.java | 4 ++-- src/main/java/core/basesyntax/Excavator.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/core/basesyntax/Bulldozer.java b/src/main/java/core/basesyntax/Bulldozer.java index 07f4f41e9..ecb954c59 100644 --- a/src/main/java/core/basesyntax/Bulldozer.java +++ b/src/main/java/core/basesyntax/Bulldozer.java @@ -4,11 +4,11 @@ public class Bulldozer extends Machine { @Override public void doWork() { - System.out.println("Truck started working"); + System.out.println("Bulldozer started working"); } @Override public void stopWork() { - System.out.println("Truck stopped working"); + System.out.println("Bulldozer stopped working"); } } diff --git a/src/main/java/core/basesyntax/Excavator.java b/src/main/java/core/basesyntax/Excavator.java index b99273aff..8640ffcc1 100644 --- a/src/main/java/core/basesyntax/Excavator.java +++ b/src/main/java/core/basesyntax/Excavator.java @@ -4,11 +4,11 @@ public class Excavator extends Machine { @Override public void doWork() { - System.out.println("Truck started working"); + System.out.println("Excavator started working"); } @Override public void stopWork() { - System.out.println("Truck stopped working"); + System.out.println("Excavator stopped working"); } }