ObjectStreamField
java.lang.Object
|—java.io.ObjectStreamField
public class ObjectStreamField
extends Object
implements Comparable<Object>
来自 Serializable 类的 Serializable 字段的描述。 ObjectStreamFields 数组用于声明类的 Serializable 字段。
Since:
1.2
构造函数摘要
构造函数 | 描述 |
---|---|
ObjectStreamField(String name, Class<?> type) | 创建具有指定类型的 Serializable 字段。 |
ObjectStreamField(String name, Class<?> type, boolean unshared) | 创建一个表示具有给定名称和类型的可序列化字段的 ObjectStreamField。 |
方法总结
修饰符和类型 | 方法 | 描述 |
---|---|---|
int | compareTo(Object obj) | 将此字段与另一个 ObjectStreamField 进行比较。 |
String | getName() | 获取该字段的名称。 |
int | getOffset() | 实例数据中的字段偏移量。 |
Class<?> | getType() | 获取字段的类型。 |
char | getTypeCode() | 返回字段类型的字符编码。 |
String | getTypeString() | 返回 JVM 类型签名。 |
boolean | isPrimitive() | 如果此字段具有原始类型,则返回 true。 |
boolean | isUnshared() | 返回布尔值,指示此 ObjectStreamField 实例表示的可序列化字段是否未共享。 |
protected void | setOffset(int offset) | 实例数据内的偏移量。 |
String | toString() | 返回描述该字段的字符串。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造函数详细信息
ObjectStreamField
public ObjectStreamField(String name, Class<?> type)
创建具有指定类型的 Serializable 字段。 该字段应使用 serialField 标签记录。
参数:
参数名称 | 参数描述 |
---|---|
name | 可序列化字段的名称 |
type | 可序列化字段的 Class 对象 |
ObjectStreamField
public ObjectStreamField(String name, Class<?> type, boolean unshared)
创建一个表示具有给定名称和类型的可序列化字段的 ObjectStreamField。 如果 unshared 为 false,则表示字段的值以默认方式进行序列化和反序列化 – 如果该字段是非原始的,则对象值将被序列化和反序列化,就好像它们已通过调用 writeObject 和 readObject 进行写入和读取一样。 如果 unshared 为真,则表示字段的值将被序列化和反序列化,就好像它们已通过调用 writeUnshared 和 readUnshared 进行写入和读取一样。
参数:
参数名称 | 参数描述 |
---|---|
name | 字段名称 |
type | 字段类型 |
unshared | 如果为 false,则以与 writeObject/readObject 相同的方式写入/读取字段值; 如果为 true,则以与 writeUnshared/readUnshared 相同的方式写入/读取 |
Since:
1.4
方法详情
getName
public String getName()
获取该字段的名称。
返回:
一个字符串,表示可序列化字段的名称
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 class or interface
S short
Z boolean
[ array
返回:
可序列化字段的类型代码
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
Since:
1.4
compareTo
public int compareTo(Object obj)
将此字段与另一个 ObjectStreamField 进行比较。 如果小于则返回 -1,如果相等则返回 0,如果大于则返回 1。 原始类型比对象类型“小”。 如果相等,则比较字段名称。
指定者:
接口 ComparableObject 中的 compareTo
参数:
参数名称 | 参数描述 |
---|---|
obj | 要比较的对象。 |
返回:
负整数、零或正整数,因为此对象小于、等于或大于指定对象。
toString
public String toString()
返回描述该字段的字符串。
覆盖:
类 Object 中的 toString
返回:
对象的字符串表示形式。