Benutzerdefinierter Konstruktor: Unterschied zwischen den Versionen
Aus FI-Wiki
Die Seite wurde neu angelegt: „== Benutzerdefinierter Konstruktor == Ein '''benutzerdefinierter Konstruktor''' ist ein selbst geschriebener Konstruktor, der Parameter entgegennimmt, um ein Objekt direkt beim Erzeugen mit bestimmten Werten zu initialisieren. Damit kann man sicherstellen, dass ein Objekt immer gültige und vollständige Startwerte erhält. === Beispiel für einen benutzerdefinierten Konstruktor === <syntaxhighlight lang="java"> public class Auto { private String…“ |
Keine Bearbeitungszusammenfassung |
||
| Zeile 1: | Zeile 1: | ||
Ein '''benutzerdefinierter Konstruktor''' ist ein selbst geschriebener Konstruktor, der Parameter entgegennimmt, um ein Objekt direkt beim Erzeugen mit bestimmten Werten zu initialisieren. | Ein '''benutzerdefinierter Konstruktor''' ist ein selbst geschriebener Konstruktor, der Parameter entgegennimmt, um ein Objekt direkt beim Erzeugen mit bestimmten Werten zu initialisieren. | ||
Damit kann man sicherstellen, dass ein Objekt immer gültige und vollständige Startwerte erhält. | Damit kann man sicherstellen, dass ein Objekt immer gültige und vollständige Startwerte erhält. | ||
== Beispiel für einen benutzerdefinierten Konstruktor == | |||
<syntaxhighlight lang="java"> | <syntaxhighlight lang="java"> | ||
public class Auto { | public class Auto { | ||
| Zeile 19: | Zeile 17: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Verwendung == | |||
Beim Erzeugen eines Objekts müssen die passenden Werte übergeben werden: | Beim Erzeugen eines Objekts müssen die passenden Werte übergeben werden: | ||
| Zeile 26: | Zeile 24: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Vorteile == | |||
* Objekt erhält sofort „sinnvolle“ Startwerte | * Objekt erhält sofort „sinnvolle“ Startwerte | ||
* verhindert unvollständig initialisierte Objekte | * verhindert unvollständig initialisierte Objekte | ||
* ermöglicht Validierung und Logik beim Erzeugen des Objekts | * ermöglicht Validierung und Logik beim Erzeugen des Objekts | ||
== Beziehung zum Default-Konstruktor == | |||
Sobald ein benutzerdefinierter Konstruktor existiert, | Sobald ein benutzerdefinierter Konstruktor existiert, | ||
erstellt Java | erstellt Java keinen [[Default-Konstruktor]] mehr. | ||
Wenn man zusätzlich einen parameterlosen Konstruktor möchte, | Wenn man zusätzlich einen parameterlosen Konstruktor möchte, | ||
muss dieser manuell geschrieben werden. | muss dieser manuell geschrieben werden. | ||
== Kurzmerksatz == | |||
'''Ein benutzerdefinierter Konstruktor initialisiert ein Objekt sofort mit sinnvollen Werten und ersetzt den automatisch erzeugten Default-Konstruktor.''' | '''Ein benutzerdefinierter Konstruktor initialisiert ein Objekt sofort mit sinnvollen Werten und ersetzt den automatisch erzeugten [[Default-Konstruktor]].''' | ||
Aktuelle Version vom 12. Januar 2026, 15:20 Uhr
Ein benutzerdefinierter Konstruktor ist ein selbst geschriebener Konstruktor, der Parameter entgegennimmt, um ein Objekt direkt beim Erzeugen mit bestimmten Werten zu initialisieren. Damit kann man sicherstellen, dass ein Objekt immer gültige und vollständige Startwerte erhält.
Beispiel für einen benutzerdefinierten Konstruktor
public class Auto {
private String marke;
private int baujahr;
// Benutzerdefinierter Konstruktor
public Auto(String marke, int baujahr) {
this.marke = marke;
this.baujahr = baujahr;
}
}
Verwendung
Beim Erzeugen eines Objekts müssen die passenden Werte übergeben werden:
Auto auto = new Auto("BMW", 2020);
Vorteile
- Objekt erhält sofort „sinnvolle“ Startwerte
- verhindert unvollständig initialisierte Objekte
- ermöglicht Validierung und Logik beim Erzeugen des Objekts
Beziehung zum Default-Konstruktor
Sobald ein benutzerdefinierter Konstruktor existiert, erstellt Java keinen Default-Konstruktor mehr. Wenn man zusätzlich einen parameterlosen Konstruktor möchte, muss dieser manuell geschrieben werden.
Kurzmerksatz
Ein benutzerdefinierter Konstruktor initialisiert ein Objekt sofort mit sinnvollen Werten und ersetzt den automatisch erzeugten Default-Konstruktor.
