Door

Lion.King

Aktives Mitglied
Hallo,

Ich soll diese Klasse schreiben, aber weiß nicht, wie ich es schreiben soll. Kann mir jemand helfen?

Implementieren Sie eine Klasse Door, die eine vereinfachte Bustür realisieren soll und folgende Eigenschaften und Verhaltensweisen besitzt:

  • Es gibt ein streng gekapseltes Attribut open, welches den Status der Tür als Wahrheitswert speichert, wobei true für offen und false für geschlossen steht.
  • Es gibt einen parameterlosen Konstruktor. Eine Tür soll standardmäßig offen sein.
  • Es gibt eine Getter-Methode für das Attribut open, isOpen().
  • Es gibt eine Methode void setOpen(boolean o) die den Status der Tür, dem Argument entsprechend, ändert.
  • Es gibt eine Methode String toString() die "O" zurückgibt, wenn die Tür offen ist und "X", falls nicht.
 

Lion.King

Aktives Mitglied
Getter und Setter sind dafür da, Zugriff auf private Attribute zu ermöglichen, Setzen falscher Attributwerte zu verhindern und Inkonsistenzen beim Ändern von Attributwerten zu vermeiden.
 

LimDul

Top Contributor
Ich habe es auch bis jetzt nicht geschafft, diese Aufgabe zu lösen. Kann mir jemand helfen und diese Klasse schreiben?
Nein.

Wir machen keine Hausaufgaben. Und wenn du bisher gar nichts geschafft hast, was man hier zeigen kann, wird dir das auch nicht helfen.

Irgendetwas wirst du doch schon geschafft haben als Rumpf.
 
K

kneitzel

Gast
Da sind ja viele Punkte. Fang doch an Punkt für Punkt zu bearbeiten.

Es geht um eine Klasse Door. Hast du die schon erstellen können?
Und dann wirklich einen Punkt nach dem anderen abarbeiten. Bei jedem Schritt immer erst das Verständnis: was ist verlangt? Dann die Umsetzung in Java.

Und wenn es bei einem Punkt Probleme gibt, dann wird man den genauen Punkt benennen können und anhand der zwei Schritte sagen können: was ist verstanden / nicht verstanden und wenn etwas verstanden wurde: eine Idee, wie das in Java umzusetzen ist?
 

Lion.King

Aktives Mitglied
Also so:

Java:
public class Door{
    public static void main(String[] args) {

 Flasche fl;
 boolean istMehrweg = Terminal.askBoolean("Fall offen
erzeugt werden soll, bitte true eingeben, ansonsten false eingeben:");

 if (true) {
 System.out.println("Offen.");
 }
 else {
 System.out.println("Zu.");

 }
 System.out.println( fl );
 }

}
 

LimDul

Top Contributor
Was ist Flasche für eine Klasse? Was hat die mit der Aufgabe zu tun?

Wo steht in der Aufgabe von etwas von der Konsole einlesen und das auswerten? Laut Aufgabe ist gar keine Main Methode gefordert.

Die Variable mehrweg hat auch nix mit der Aufgabe zu tun.

Fang von 0 an - Leg eine Klasse Door an. Ohne Inhalt. Und dann fang mit mit der ersten Teilaufgabe an - ein Attribut open anzulegen.
 

LimDul

Top Contributor
Als Hilfe - mit folgender Klasse kannst du deine Door Klasse testen:
Java:
public class DoorTest {

    public static void main(String[] args) {
        Door door = new Door();
        System.out.println(door);
        System.out.println(door.isOpen());
        door.setOpen(false);
        System.out.println(door);
        System.out.println(door.isOpen());
    }
}

Erwartete Ausgabe:
Code:
O
true
X
false
 

Hag2bard

Bekanntes Mitglied
Sorry wenn ich da so dazwischen grätsche aber dir nicht bei dieser Hausaufgabe helfe, haben meiner Meinung nach andere bereits ausführlich beantwortet.
Ist das eine Hausaufgabe für die Schule? Gymnasium? LK? Studium, welches Semester oder eine Aufgabe in einer Ausbildung?
 

Neue Themen


Oben