ここでは、継承した場合でもコピーを作成できるICloneableの実装方法(ディープコピー)をいくつか紹介します。 メモ: 一般に、ディープコピーの実装や保守には手間が掛かります。ここで紹介する実装方法でも、シリアライザを利用する方法以外では、派生クラスで必ずCloneメソッドをオーバーライドしなければなりません。また、クラスのフィールドが増減する度にCloneメソッドを修正する必要があります。可能であればオブジェクトをimmutable(不変)に設計し、ディープコピーの実装を回避した方が良いでしょう。 メモ: ICloneableの仕様では、Cloneメソッドによるコピー処理は、シャローコピー(簡易コピー)とディープコピー(詳細コピー)のどちらでも良いことになっています。その結果、ICloneableを実装していても実装詳細を知らなければCloneメソッドの挙動を予測できません。そのため