clone()
にメソッドを実装しようとしていDoubleLinkedList
ます。DoubleLinkedList
さて、問題は、「規則」によってそれを実装することは、単に新しいものを作成して、現在のDoubleLinkedListのすべての要素で埋めるよりもはるかに面倒なことです。
それをしているときに私が見ない不便はありますか?
これが私の現在のアプローチです:
@Override
public DoubleLinkedList<T> clone() {
DoubleLinkedList<T> dll = new DoubleLinkedList<T>();
for (T element : dll) {
dll.add(element);
}
return dll;
}
慣例により、次のようになります。
@Override
public DoubleLinkedList<T> clone() {
try {
DoubleLinkedList<T> dll = (DoubleLinkedList<T>)super.clone();
//kinda complex code to copy elements
return dll;
} catch (CloneNotSupportedException e) {
throw new InternalError(e.toString());
}
}