Module java.base
Package java.io

Class ObjectStreamField

java.lang.Object
java.io.ObjectStreamField
所有已实现的接口:
Comparable<Object>

public class ObjectStreamField extends Object implements Comparable<Object>
序列化类中可序列化字段的描述。使用ObjectStreamFields数组声明类的可序列化字段。
自1.2版本起:
1.2
参见:
  • Constructor Details

    • ObjectStreamField

      public ObjectStreamField(String name, Class<?> type)
      使用指定类型创建一个可序列化字段。此字段应该使用serialField标记进行文档化。
      参数:
      name - 可序列化字段的名称
      type - 可序列化字段的Class对象
    • ObjectStreamField

      public ObjectStreamField(String name, Class<?> type, boolean unshared)
      创建一个表示具有给定名称和类型的可序列化字段的ObjectStreamField。如果unshared为false,则表示字段的值将以默认方式进行序列化和反序列化--如果字段为非原始类型,则对象值将被序列化和反序列化,就好像它们已经通过writeObject和readObject的调用进行了写入和读取。如果unshared为true,则表示字段的值将被序列化和反序列化,就好像它们已经通过writeUnshared和readUnshared的调用进行了写入和读取。
      参数:
      name - 字段名称
      type - 字段类型
      unshared - 如果为false,则以与writeObject/readObject相同的方式写入/读取字段值;如果为true,则以与writeUnshared/readUnshared相同的方式写入/读取
      自1.4版本起:
      1.4
  • Method Details

    • getName

      public String getName()
      获取此字段的名称。
      返回:
      代表可序列化字段名称的String
    • getType

      public Class<?> getType()
      获取字段的类型。如果类型为非原始类型,并且此ObjectStreamField是从反序列化的ObjectStreamClass实例获取的,则返回Object.class。否则,返回字段类型的Class对象。
      返回:
      代表可序列化字段类型的Class对象
    • getTypeCode

      public char getTypeCode()
      返回字段类型的字符编码。编码如下:
       B            byte
       C            char
       D            double
       F            float
       I            int
       J            long
       L            类或接口
       S            short
       Z            boolean
       [            数组
       
      返回:
      可序列化字段的类型代码
    • getTypeString

      public String getTypeString()
      返回JVM类型签名。
      返回:
      如果此字段具有原始类型,则返回null。
    • getOffset

      public int getOffset()
      实例数据中字段的偏移量。
      返回:
      此字段的偏移量
      参见:
    • setOffset

      protected void setOffset(int offset)
      实例数据中的偏移量。
      参数:
      offset - 字段的偏移量
      参见:
    • isPrimitive

      public boolean isPrimitive()
      如果此字段具有原始类型,则返回true。
      返回:
      如果此字段对应原始类型,则返回true
    • isUnshared

      public boolean isUnshared()
      返回一个布尔值,指示由此ObjectStreamField实例表示的可序列化字段是否为非共享的。
      返回:
      如果此字段为非共享的,则返回true
      自1.4版本起:
      1.4
    • compareTo

      public int compareTo(Object obj)
      将此字段与另一个ObjectStreamField进行比较。如果此字段较小,则返回-1,如果相等,则返回0,如果较大,则返回1。原始类型比对象类型“小”。如果相等,则比较字段名称。
      指定者:
      compareTo 在接口 Comparable<Object>
      参数:
      obj - 要比较的对象
      返回:
      如果此对象小于、等于或大于指定对象,则返回负整数、零或正整数。
    • toString

      public String toString()
      返回描述此字段的字符串。
      覆盖:
      toString 在类 Object
      返回:
      对象的字符串表示形式。