Methoden Object.clone()

fugari

Neues Mitglied
Hallo. Ich habe etwas Schwierigkeiten mit der clone Methode. Und zwar soll ich eine Queue schreiben und hier die clone-Methode überschreiben. Ich benutze für die Queue ein einfaches Array das Objects enthält. Mein Ansatz wäre:

Java:
@Override
    public FIFO clone(){
        FIFO f = new FIFO(this.array.length);
        f.array = this.array.clone();
        return f;
    }
Ich weiß, dass das keine tiefe Kopie ist, da die clone Methode von Object nunmal nicht tief klont, oder? Jetzt hat mein Prof hier aber rumgemeckert und meinte ich solle auch zeigen WARUM ich hier nicht tief klonen kann. Ich stehe einfach etwas auf dem Schlauch, da ich nicht weiß was er will. Denn genau genommen kann ich doch tief klonen, wenn ich mit beispielsweise einer for-Schleife durch das Array iteriere und jeden einzelnen Index des Arrays klone und in das neue Array "schmeiße"? Wäre für jede Hilfe dankbar da ich das mit dem Klonen wohl immernoch nicht hundert prozentig begreife.
 
Zuletzt bearbeitet von einem Moderator:
Was würde denn z.B. passieren, wenn man tief klont, aber die übergebenen Objekte nicht Cloneable sind?
Und angenommen, man klont tief und die Objekte sind Cloneable, liegen dann noch die gleichen Objekte in der Queue?
 

Zurück
Oben