Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Ein Konstruktor wird immer für die Initialisierung des Objektes verwendet und je nachdem mit welchen Werten das Objekt initialisiert werden soll kann man dann auch mal verschiedene Konstruktoren brauchen.
An deinem Beispiel:
Du hast das Objekt Kfz. Um dieses zu initialisieren musst du einen der Konstruktoren aufrufen. Je nachdem welcher der beiden aufgerufen wird, wird das Kfz entweder nur mit Herstellertyp initialisiert oder aber es bekommt gleich noch ein Kennzeichen und einen Kilometerstand mit dazu.
Nochmal speziell zu deinem Beispiel dienen die beiden Konstruktoren (wie die Kommentare schon sagen) dafür neue oder bereits gebrauchte Autos zu initialisieren.
Hat man einen Neuwagen, dann hat dieser noch kein Kennzeichen und der Kilometerstand ist immer 0. Von daher kann diesem bei der Initialisierung eben nur der Herstellertyp mitgegeben werden.
Hast du ein bereits gebrauchtes Auto, dann ist dieses bereits zugelassen und wurde gefahren. Hier kannst du bei der Initialisierung dann noch Kilometerstand und Kennzeichen mitgeben.
Danke für die schnelle Antwort,
das heisst also (wenn ich es richtig verstanden habe), dass man hier zwei Konstruktoren hat, weil es zwei verschiedene Objektvariationen hat, denen man nur bestimmte Parameter mitgeben kann.
Also z.B.:
Objekt 1 = nur Parameter 1
Objekt 2 = Parameter 1 + Parameter 2 + Paramter 3.
Ist das richtig so, oder bin ich auf dem falschen Dampfer?
Danke für die schnelle Antwort,
das heisst also (wenn ich es richtig verstanden habe), dass man hier zwei Konstruktoren hat, weil es zwei verschiedene Objektvariationen hat, denen man nur bestimmte Parameter mitgeben kann.
Also z.B.:
Objekt 1 = nur Parameter 1
Objekt 2 = Parameter 1 + Parameter 2 + Paramter 3.
Ist das richtig so, oder bin ich auf dem falschen Dampfer?
In deinem Beispiel ist das jetzt durchaus zutreffend. Vom Objekt Kfz (also vom Auto ) gibt es in dem Sinn zwei Ausprägungen. Eben Neuwagen und Gebrachtwagen die jeweils unterschiedliche viele der möglichen Parameter besitzen. Von diesem Standpunkt aus ist deine Betrachtung richtig.
Es muss aber nicht immer dieser Grund sein warum man zwei (oder mehr) Konstruktoren zu einer Klasse hat.
Nimm als Beispiel mal die Klasse JFrame, die hat vier verschiedene Konstruktoren. Vom Prinzip zieht hier wieder die Erklärung von vorhin. Die verschiedenen Konstruktoren können verwendet werden um JFrame auf verschiedene Art und Weise zu initialiseren.
Als kleines Beispiel:
public JFrame() {...} -> Erzeugt einen leeren Frame
public JFrame("blablabla") {...} -> Erzeugt einen leeren Frame, jedoch mit "blablabla" als Titel
also einfach nur zwei oder mehr Konstrukotren um ein Objekt auf verschiedene Art und Weise zu initialisieren?
Na wenn das so ist. Danke für die schnelle Auflösung.
also einfach nur zwei oder mehr Konstrukotren um ein Objekt auf verschiedene Art und Weise zu initialisieren?
Na wenn das so ist. Danke für die schnelle Auflösung.