[API] java.lang.Cloneableインターフェース

java.lang.Cloneableは、オブジェクトをシリアライズ化するためのインターフェースです。

java.lang.Cloneableの特徴

java.lang.Cloneableは以下の特徴があります。

  • メソッドやフィールドが全く定義されていないマーカーインターフェースである。
  • オブジェクトのクローンを作成できることを示すために実装される。

java.lang.Cloneableを実装したクラスは、cloneメソッドをオーバーライドしてクローン生成処理を実装する必要があります。
cloneメソッドはshallow copyを返すので、deep copyとしたい場合は再帰でクローンを実装してください。
また、cloneメソッドはCloneNotSupportedExceptionが発生する可能性があります。

java.lang.Cloneableの継承・実装

継承インターフェース

・なし

導入バージョン

・JDK1.0

java.lang.CloneableのAPI

フィールド、メソッドは一切定義されていません。

java.lang.Cloneableサンプル

(クローン可能なクラスの定義の例)

public class TestCloneableClass implements Cloneable {

  @Override
  public Object clone() throws CloneNotSupportedException {
    return super.clone(); //クローンを返す
  }

}

コメント

タイトルとURLをコピーしました