diff --git a/.devcontainer.json b/.devcontainer.json new file mode 100644 index 0000000..bfbeb0d --- /dev/null +++ b/.devcontainer.json @@ -0,0 +1,3 @@ +{ + "image": "mcr.microsoft.com/devcontainers/java:21" +} \ No newline at end of file diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..add4f4e --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,5 @@ +{ + "recommendations": [ + "vscjava.vscode-java-pack" + ] +} \ No newline at end of file diff --git a/Exercise.java b/Exercise.java index 3c092f9..61d2ee4 100644 --- a/Exercise.java +++ b/Exercise.java @@ -1,6 +1,15 @@ public class Exercise { public static void main(String[] args) { - // implement exercise here + + Vehicle vehicle = new Vehicle(); + + vehicle.setMake("Porsche"); + vehicle.setModel("911"); + + vehicle.accelerate(30); + vehicle.accelerate(30); + vehicle.brake(20); + vehicle.accelerate(40); } } diff --git a/Vehicle.java b/Vehicle.java new file mode 100644 index 0000000..36e7c28 --- /dev/null +++ b/Vehicle.java @@ -0,0 +1,40 @@ +public class Vehicle { + + private String make; + private String model; + private double speedInKmh; + + public void setMake(String make) { + this.make = make; + } + + public void setModel(String model) { + this.model = model; + } + + public String getMake() { + return make; + } + + public String getModel() { + return model; + } + + public double getSpeedInKmh() { + return speedInKmh; + } + + public void accelerate(int valueInKmh) { + speedInKmh += valueInKmh; + System.out.println(toString() + " beschleunigt auf " + speedInKmh + "km/h"); + } + + public void brake(int valueInKmh) { + speedInKmh -= valueInKmh; + System.out.println(toString() + " bremst auf " + speedInKmh + "km/h ab"); + } + + public String toString() { + return make + " " + model; + } +}