2 Stimmen

Implementierung von Clonable in Java

In welchen Fällen sollte ich diesen Weg wählen?

public A clone() throws CloneNotSupportedException {
    A clone = (A)super.clone();
    clone.x= this.x;
    return clone;
}

Und in welchen Fällen sollte ich diesen Weg wählen:

public ShiftedStack clone() throws CloneNotSupportedException {
    return new A(this.x);
}

Was sollte ich tun, wenn x endgültig ist und ich die erste Möglichkeit nutzen möchte?

Was die erste Möglichkeit betrifft, so verstehe ich es so: Wir klonen die Superklasse und führen einen Up-Cast durch, was dazu führt, dass einige Mitglieder nicht initialisiert sind. Danach initialisieren wir diese Mitglieder. Ist mein Verständnis richtig?

Ich danke Ihnen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X