ObjectStreamClass充当类的序列化描述符。此类包含名称和该类的serialVersionUID。
领域
修饰符和类型 | 领域 | 描述 |
---|---|---|
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的字符串。 |
例
import java.io.ObjectStreamClass;
import java.util.Calendar;
public class ObjectStreamClassExample {
public static void main(String[] args) {
// create a new object stream class for Integers
ObjectStreamClass osc = ObjectStreamClass.lookup(SmartPhone.class);
// get the value field from ObjectStreamClass for integers
System.out.println("" + osc.getField("price"));
// create a new object stream class for Calendar
ObjectStreamClass osc2 = ObjectStreamClass.lookup(String.class);
// get the Class instance for osc2
System.out.println("" + osc2.getField("hash"));
}
}
输出:
I price
null
评论前必须登录!
注册