Wie ruft man in Java einen Konstruktor einer anderen Klasse auf?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Der konstruktor einer Klasse wird automatisch aufgerufen wenn du ein Objekt einer Klasse erstellst.

Klasse k = new Klasse(argumente);

In den Klammern kommen (falls nötig) die Argumente rein die der Konstruktor braucht um die Klasse zu konstruieren

Woher ich das weiß:Studium / Ausbildung – Informatik Studium, 3. Semester.
Nichtsnutz12 
Fragesteller
 27.11.2021, 00:57

Check ich net. Was wenn niemand von niemanden erbt? Und kann ich den Konstruktor von klasse b in einer Methode von klasse a aufrufen?

0
regex9  27.11.2021, 01:33
@Nichtsnutz12

Was sollte das alles mit Vererbung zutun haben? Wenn du einen Konstruktor aufrufst, dann doch nur, um ein Objekt zu initialisieren.

Ein Beispiel:

class Ship {
  private Color color;

  public Ship(Color color) {
    this.color = color;
  }
}

class Shipyard {
  public Ship buildShip(Color color) {
    return new Ship(color);
  }
}

Die Werft baut in buildShip ein Schiffsobjekt, indem es zum einen den new-Konstruktor benutzt (zur Speicherreservierung für das Schiffsobjekt) und zum anderen (danach) den Konstruktor von Ship aufruft.

3

stimmt du hast da was nicht verstanden .

du hast zwei klassen, damit kannst du überall wo du die einbindest die klasse benutzen und davon objekte machen .

was du meinst ist eine klasse zu erweitern oder von einer klaase ableiten , damit brauchst du dann halt nur ein objekt der abgeleiteten etc klasse machen .

das eine hat also mit dem anderen nix zu tun .

Wenn du eine Klasse B hast, die von A erbt, dann kannst du den Konstruktor von der vererbten Klasse A mit "super(Argumente...)" im Konstruktor von Klasse B aufrufen. Das muss dann aber das erste sein, was du im Konstruktor der Klasse B machst.

Nichtsnutz12 
Fragesteller
 27.11.2021, 00:55

Check ich net. Was wenn niemand von niemanden erbt? Und kann ich den Konstruktor von klasse b in einer Methode von klasse a aufrufen?

0
Schmierfinger  27.11.2021, 00:58
@Nichtsnutz12

Wenn nichts vererbt wird, dann kannst du selbstverständlich in der entsprechenden Methode Instanzen der Klasse B erstellen. Wie das aussieht, steht ja in der anderen Antwort. Hab die Frage wohl falsch interpretiert.

1