From: Robin Cheney Date: Fri, 7 Nov 2025 07:50:30 +0000 (+0100) Subject: Removed Inheritants of Tankstelle and changed differentiation method to constructor... X-Git-Url: https://git.eternal.ddnss.de/?a=commitdiff_plain;h=f6334dcb15a8b170003b4bb05eaedffdb0700a64;p=tankstelle.git Removed Inheritants of Tankstelle and changed differentiation method to constructor overloading --- diff --git a/src/main/java/de/tankstelle/Groesse.java b/src/main/java/de/tankstelle/Groesse.java new file mode 100644 index 0000000..1da0cd2 --- /dev/null +++ b/src/main/java/de/tankstelle/Groesse.java @@ -0,0 +1,7 @@ +package de.tankstelle; + +public enum Groesse { + GROSS, + MITTEL, + KLEIN +} diff --git a/src/main/java/de/tankstelle/GrosseTankstelle.java b/src/main/java/de/tankstelle/GrosseTankstelle.java index c0ebff8..dfce86f 100644 --- a/src/main/java/de/tankstelle/GrosseTankstelle.java +++ b/src/main/java/de/tankstelle/GrosseTankstelle.java @@ -1,16 +1,16 @@ package de.tankstelle; -public class GrosseTankstelle extends Tankstelle { - private String betreiberfirma_supermarkt; +// public class GrosseTankstelle extends Tankstelle { +// private String betreiberfirma_supermarkt; - public GrosseTankstelle(String betreiberfirma_supermarkt) { - Treibstoff[] treibstoffe = { new Treibstoff(Treibstofftyp.SUPER, 8000f, 0f, 16000), - new Treibstoff(Treibstofftyp.SUPER_E10, 8000f, 0f, 16000), - new Treibstoff(Treibstofftyp.DIESEL, 8000f, 0f, 16000), - new Treibstoff(Treibstofftyp.PREMIUM_DIESEL, 8000f, 0f, 16000), - new Treibstoff(Treibstofftyp.AUTOGAS, 8000f, 0f, 16000) }; - super((byte) 4, treibstoffe); +// public GrosseTankstelle(String betreiberfirma_supermarkt) { +// Treibstoff[] treibstoffe = { new Treibstoff(Treibstofftyp.SUPER, 8000f, 0f, 16000), +// new Treibstoff(Treibstofftyp.SUPER_E10, 8000f, 0f, 16000), +// new Treibstoff(Treibstofftyp.DIESEL, 8000f, 0f, 16000), +// new Treibstoff(Treibstofftyp.PREMIUM_DIESEL, 8000f, 0f, 16000), +// new Treibstoff(Treibstofftyp.AUTOGAS, 8000f, 0f, 16000) }; +// super((byte) 4, treibstoffe); - this.betreiberfirma_supermarkt = betreiberfirma_supermarkt; - } -} +// this.betreiberfirma_supermarkt = betreiberfirma_supermarkt; +// } +// } diff --git a/src/main/java/de/tankstelle/KleineTankstelle.java b/src/main/java/de/tankstelle/KleineTankstelle.java index 68a8a44..6c1088a 100644 --- a/src/main/java/de/tankstelle/KleineTankstelle.java +++ b/src/main/java/de/tankstelle/KleineTankstelle.java @@ -1,12 +1,12 @@ -package de.tankstelle; +// package de.tankstelle; -public class KleineTankstelle extends Tankstelle { - private short anzahl_getraenkeautomaten; +// public class KleineTankstelle extends Tankstelle { +// private short anzahl_getraenkeautomaten; - public KleineTankstelle(short anzahl_getraenkeautomaten) { - Treibstoff[] treibstoffe = { new Treibstoff(Treibstofftyp.SUPER, 4000f, 0f, 8000), - new Treibstoff(Treibstofftyp.DIESEL, 4000f, 0f, 8000) }; - super((byte) 4, treibstoffe); - this.anzahl_getraenkeautomaten = anzahl_getraenkeautomaten; - } -} +// public KleineTankstelle(short anzahl_getraenkeautomaten) { +// Treibstoff[] treibstoffe = { new Treibstoff(Treibstofftyp.SUPER, 4000f, 0f, 8000), +// new Treibstoff(Treibstofftyp.DIESEL, 4000f, 0f, 8000) }; +// super((byte) 4, treibstoffe); +// this.anzahl_getraenkeautomaten = anzahl_getraenkeautomaten; +// } +// } diff --git a/src/main/java/de/tankstelle/Main.java b/src/main/java/de/tankstelle/Main.java index 3172dbb..b048731 100644 --- a/src/main/java/de/tankstelle/Main.java +++ b/src/main/java/de/tankstelle/Main.java @@ -2,6 +2,6 @@ package de.tankstelle; public class Main { public static void main(String[] args) { - + } } \ No newline at end of file diff --git a/src/main/java/de/tankstelle/MittlereTankstelle.java b/src/main/java/de/tankstelle/MittlereTankstelle.java index 0c0bfde..06f7da8 100644 --- a/src/main/java/de/tankstelle/MittlereTankstelle.java +++ b/src/main/java/de/tankstelle/MittlereTankstelle.java @@ -1,14 +1,14 @@ -package de.tankstelle; +// package de.tankstelle; -public class MittlereTankstelle extends Tankstelle { - private short quadratmeterzahl_verkaufsflaeche; +// public class MittlereTankstelle extends Tankstelle { +// private short quadratmeterzahl_verkaufsflaeche; - public MittlereTankstelle(short quadratmeterzahl_verkaufsflaeche) { - Treibstoff[] treibstoffe = { new Treibstoff(Treibstofftyp.SUPER, 6000f, 0f, 12000), - new Treibstoff(Treibstofftyp.SUPER_E10, 6000f, 0f, 12000), - new Treibstoff(Treibstofftyp.PREMIUM_DIESEL, 6000f, 0f, 12000), - new Treibstoff(Treibstofftyp.AUTOGAS, 6000f, 0f, 12000) }; - super((byte) 4, treibstoffe); - this.quadratmeterzahl_verkaufsflaeche = quadratmeterzahl_verkaufsflaeche; - } -} +// public MittlereTankstelle(short quadratmeterzahl_verkaufsflaeche) { +// Treibstoff[] treibstoffe = { new Treibstoff(Treibstofftyp.SUPER, 6000f, 0f, 12000), +// new Treibstoff(Treibstofftyp.SUPER_E10, 6000f, 0f, 12000), +// new Treibstoff(Treibstofftyp.PREMIUM_DIESEL, 6000f, 0f, 12000), +// new Treibstoff(Treibstofftyp.AUTOGAS, 6000f, 0f, 12000) }; +// super((byte) 4, treibstoffe); +// this.quadratmeterzahl_verkaufsflaeche = quadratmeterzahl_verkaufsflaeche; +// } +// } diff --git a/src/main/java/de/tankstelle/Tankstelle.java b/src/main/java/de/tankstelle/Tankstelle.java index cc0bf24..969155e 100644 --- a/src/main/java/de/tankstelle/Tankstelle.java +++ b/src/main/java/de/tankstelle/Tankstelle.java @@ -4,20 +4,49 @@ public class Tankstelle { /** * Anzahl der Mitarbeiter einer Tankstelle */ - byte mitarbeiterzahl; + private byte mitarbeiterzahl; /** * Treibstoffarten und -mengen. */ - Treibstoff[] treibstoffe; + private Treibstoff[] treibstoffe; - /** - * Superconstructor. Nur sichtbar für hiervon erbende Klassen - * - * @param mitarbeiterzahl - * @param treibstoffe - */ - protected Tankstelle(byte mitarbeiterzahl, Treibstoff[] treibstoffe) { + private int quadratmeterzahl_verkaufsflaeche; + + private short anzahl_getraenkeautomaten; + + private String betreiberfirma_supermarkt; + + private Groesse groesse; + + private Tankstelle(byte mitarbeiterzahl, Groesse groesse, Treibstoff[] treibstoffe) { this.mitarbeiterzahl = mitarbeiterzahl; + this.groesse = groesse; this.treibstoffe = treibstoffe; } + + public Tankstelle(byte mitarbeiterzahl, String betreiberfirma_supermarkt) { + Treibstoff[] treibstoffe = { new Treibstoff(Treibstofftyp.SUPER, 8000f, 0f, 16000), + new Treibstoff(Treibstofftyp.SUPER_E10, 8000f, 0f, 16000), + new Treibstoff(Treibstofftyp.DIESEL, 8000f, 0f, 16000), + new Treibstoff(Treibstofftyp.PREMIUM_DIESEL, 8000f, 0f, 16000), + new Treibstoff(Treibstofftyp.AUTOGAS, 8000f, 0f, 16000) }; + this(mitarbeiterzahl, Groesse.GROSS, treibstoffe); + this.betreiberfirma_supermarkt = betreiberfirma_supermarkt; + } + + public Tankstelle(byte mitarbeiterzahl, int quadratmeterzahl_verkaufsflaeche) { + Treibstoff[] treibstoffe = { new Treibstoff(Treibstofftyp.SUPER, 6000f, 0f, 12000), + new Treibstoff(Treibstofftyp.SUPER_E10, 6000f, 0f, 12000), + new Treibstoff(Treibstofftyp.PREMIUM_DIESEL, 6000f, 0f, 12000), + new Treibstoff(Treibstofftyp.AUTOGAS, 6000f, 0f, 12000) }; + this(mitarbeiterzahl, Groesse.MITTEL, treibstoffe); + this.quadratmeterzahl_verkaufsflaeche = quadratmeterzahl_verkaufsflaeche; + } + + public Tankstelle(byte mitarbeiterzahl, short anzahl_getraenkeautomaten) { + Treibstoff[] treibstoffe = { new Treibstoff(Treibstofftyp.SUPER, 4000f, 0f, 8000), + new Treibstoff(Treibstofftyp.DIESEL, 4000f, 0f, 8000) }; + this(mitarbeiterzahl, Groesse.KLEIN, treibstoffe); + this.anzahl_getraenkeautomaten = anzahl_getraenkeautomaten; + } }