モジュール java.base
パッケージ java.io

クラスObjectStreamClass

java.lang.Object
java.io.ObjectStreamClass
すべての実装されたインタフェース:
Serializable

public class ObjectStreamClass
extends Object
implements Serializable
クラスの直列化の記述子です。 クラスの名前およびserialVersionUIDを格納します。 このJava VMにロードされた特定のクラスのObjectStreamClassは、lookupメソッドを使用して検索および作成できます。

SerialVersionUIDを計算するアルゴリズムは、 「オブジェクト直列化仕様」のセクション4.6「ストリーム固有識別子」で説明されています。

導入されたバージョン:
1.1
関連項目:
ObjectStreamField, 「オブジェクト直列化仕様」のセクション4「クラス記述子」, 直列化された形式
  • フィールド詳細

    • NO_FIELDS

      public static final ObjectStreamField[] NO_FIELDS
      serialPersistentFieldsの値。直列化可能フィールドがないことを示します。
  • メソッドの詳細

    • lookup

      public static ObjectStreamClass lookup​(Class<?> cl)
      直列化可能クラスの記述子を検索します。 クラスの記述子がまだない場合は、ObjectStreamClassのインスタンスを生成します。 指定されたクラスがjava.io.Serializableまたはjava.io.Externalizableを実装していない場合は、nullを返します。
      パラメータ:
      cl - 記述子の取得対象となるクラス
      戻り値:
      指定されたクラスのクラス記述子
    • lookupAny

      public static ObjectStreamClass lookupAny​(Class<?> cl)
      Serializableを実装しているかどうかにかかわらず、任意のクラスの記述子を返します。
      パラメータ:
      cl - 記述子の取得対象となるクラス
      戻り値:
      指定されたクラスのクラス記述子
      導入されたバージョン:
      1.6
    • getName

      public String getName()
      この記述子によって記述されるクラスの名前を返します。 このメソッドは、Class.getName()メソッドで使用されている形式でクラスの名前を返します。
      戻り値:
      クラスの名前を表す文字列
    • getSerialVersionUID

      public long getSerialVersionUID()
      このクラスのserialVersionUIDを返します。 serialVersionUIDでは、クラスのセットをすべて同じ名前で定義します。これらのクラスは共通のルート・クラスから展開したもので、共通形式を使って直列化と直列化復元が行われます。 NonSerializableクラスは、OLのserialVersionUIDを持ちます。
      戻り値:
      この記述子で記述するクラスのSUID
    • forClass

      public Class<?> forClass()
      このバージョンのマップ先となるローカルVM内のクラスを返します。 対応するローカル・クラスがなければnullを返します。
      戻り値:
      この記述子が表すClassインスタンス
    • getFields

      public ObjectStreamField[] getFields()
      この直列化可能クラスのフィールドの配列を返します。
      戻り値:
      このクラスの各持続フィールドの要素を格納している配列。 フィールドがない場合は長さ0の配列。
      導入されたバージョン:
      1.2
    • getField

      public ObjectStreamField getField​(String name)
      このクラスのフィールドを名前で取得します。
      パラメータ:
      name - 検索するデータ・フィールドの名前
      戻り値:
      指定されたフィールドのObjectStreamFieldオブジェクト。指定されたフィールドがない場合はnull。
    • toString

      public String toString()
      このObjectStreamClassを記述した文字列を返します。
      オーバーライド:
      toString 、クラス:  Object
      戻り値:
      このオブジェクトの文字列表現