私はJavaでclone()を実装することについて簡単なグーグルをしました、そして見つけました:http: //www.javapractices.com/topic/TopicAction.do?Id = 71 次のコメントがあります。 コピーコンストラクターと静的ファクトリメソッドは、クローンの代替手段を提供し、実装がはるかに簡単です。 私がやりたいのは、深いコピーを作成することだけです。clone()を実装することは非常に理にかなっているようですが、このグーグルランクの高い記事は私を少し恐れさせます。 これが私が気付いた問題です: コピーコンストラクターはジェネリックスでは機能しません。 コンパイルされない疑似コードを次に示します。 public class MyClass<T>{ .. public void copyData(T data){ T copy=new T(data);//This isn't going to work. } .. } サンプル1:ジェネリッククラスでコピーコンストラクターを使用する。 ファクトリメソッドには標準名がありません。 再利用可能なコードのインターフェースがあるのはとてもいいことです。 public class MyClass<T>{ .. public void copyData(T data){ T copy=data.clone();//Throws an exception if the input was not cloneable } …