Werte für Konstruktor vorschlagen

Plunty

Mitglied
Hallo Zusammen,

ich habe ein kleines Problem und zwar möchte ich bei einem Konstruktor erlaubte Werte vorgaben.

BSP:

meinKonstruktor(String x){
.
.
.
}

Jetzt solen für das x z.B. nur Auto und Fahrrad erlaubt sein. Beim Aufruf sollen diese beiden Werte also vorgeschlagen werden. Ist das irgendwie möglich?

Vielen Dank.
 
Nimm statt nem String ein Enum mit den beiden Werten Fahrrad und Auto dann gibts nur die beiden Möglichkeiten.
Ansonsten kannst du höchstens ne Exception schmeißen falls ein anderer String übergeben wurde. Wobei das wohl nicht das ist, was du willst.
 
Eine andere Variante wäre Vererbung (insbesondere wenn sich auf Grund des Strings an manchen Stellen ein anderes Verhalten gewünscht ist):

Java:
abstract class Fahrzeug {
   protected Fahrzeug(String x) { .. }
}

public class Auto extends Fahrzeug {
   public Auto() { super("Auto"); }
}

public class Fahrrad extends Fahrzeug {
   public Fahrrad () { super("Fahrrad "); }
}

Oder man nutzt das Factory-Pattern:
Java:
public class Fahrzeug {
   private Fahrzeug(String x) { .. }

   public static Fahrzeug auto() { return new Fahrzeug("Auto"); }
   public static Fahrzeug fahrrad() { return new Fahrzeug("Fahrrad"); }
}
 

Zurück
Oben