Ich dachte immer, dass clone()
erstellt ein Objekt ohne einen Konstruktor aufrufen.Kann Klon Methode erstellen Objekt mit Konstruktor
Aber beim Lesen Effective Java Punkt 11: Überschreiben von Klon umsichtig, fand ich eine Erklärung, die besagt, dass
Die Bestimmung, dass zu stark „kein Bauer genannt wird“ ist. Eine wohlverstandene Clone-Methode kann Konstruktoren aufrufen, um Objekte intern für den im Aufbau befindlichen Klon zu erstellen. Wenn die Klasse final ist, kann der Klon sogar ein Objekt zurückgeben, das von einem Konstruktor erstellt wurde.
Kann mir bitte jemand das erklären?
'clone()' Methode ruft Konstruktor nicht auf, sein Standardverhalten ist, dass es eine flache Kopie ausführt. aber wenn wir eine tiefe Kopie durchführen wollen, müssen wir die 'clone()' Methode überschreiben, von der wir ein neues Objekt zurückgeben können. – swapy