Java ObjectStreamClass

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 IntegersObjectStreamClass osc = ObjectStreamClass.lookup(SmartPhone.class); // get the value field from ObjectStreamClass for integersSystem.out.println("" + osc.getField("price")); // create a new object stream class for CalendarObjectStreamClass osc2 = ObjectStreamClass.lookup(String.class); // get the Class instance for osc2System.out.println("" + osc2.getField("hash")); }}

【Java ObjectStreamClass】输出:
I pricenull

    推荐阅读