阅读(2621) (0)

鸿蒙OS ObjectStreamClass

2022-10-17 09:44:48 更新

ObjectStreamClass

java.lang.Object

|---java.io.ObjectStreamClass

public class ObjectStreamClass
extends Object
implements Serializable

类的序列化描述符。 它包含类的名称和 serialVersionUID。 可以使用查找方法找到/创建此 Java VM 中加载的特定类的 ObjectStreamClass。

计算 SerialVersionUID 的算法在对象序列化规范,第 4.6 节,流唯一标识符中描述。

Since:

JDK1.1

字段摘要

修饰符和类型 字段 描述
static ObjectStreamField[] NO_FIELDS serialPersistentFields 值指示没有可序列化的字段

方法总结

修饰符和类型 方法 描述
Class<?> forClass() 返回此版本映射到的本地 VM 中的类。
ObjectStreamField getField(String name) 按名称获取此类的字段。
ObjectStreamField[] getFields() 返回此可序列化类的字段数组。
String getName() 返回此描述符所描述的类的名称。
long getSerialVersionUID() 返回此类的 serialVersionUID。
static ObjectStreamClass lookup(Class<?> cl) 查找可以序列化的类的描述符。
static ObjectStreamClass lookupAny(Class<?> cl) 返回任何类的描述符,无论它是否实现 Serializable。
String toString() 返回描述此 ObjectStreamClass 的字符串。
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

字段详细信息

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 获取描述符的类

返回:

指定类的类描述符

Since:

1.6

getName

public String getName()

返回此描述符所描述的类的名称。 此方法以 Class#getName 方法使用的格式返回类的名称。

返回:

表示类名的字符串

getSerialVersionUID

public long getSerialVersionUID()

返回此类的 serialVersionUID。 serialVersionUID 定义了一组具有相同名称的类,这些类都是从一个公共根类演变而来的,并同意使用公共格式进行序列化和反序列化。 NonSerializable 类的 serialVersionUID 为 0L。

返回:

此描述符所描述的类的 SUID

forClass

public Class<?> forClass()

返回此版本映射到的本地 VM 中的类。 如果没有对应的本地类,则返回 Null。

返回:

此描述符表示的 Class 实例

getFields

public ObjectStreamField[] getFields()

返回此可序列化类的字段数组。

返回:

包含此类的每个持久字段的元素的数组。 如果没有字段,则返回长度为零的数组。

Since:

1.2

getField

public ObjectStreamField getField(String name)

按名称获取此类的字段。

参数:

参数名称 参数描述
name 要查找的数据字段的名称

返回:

命名字段的 ObjectStreamField 对象,如果没有这样的命名字段,则返回 null。

toString

public String toString()

返回描述此 ObjectStreamClass 的字符串。

覆盖:

类 Object 中的 toString

返回:

对象的字符串表示形式。