什么是Serializable

来源:互联网 发布:义乌淘宝培训多少钱 编辑:程序博客网 时间:2024/06/05 03:08
Serializable:用于启动对象的序列化功能,可以强制让指定类具备序列化功能,该接口中没有成员,这是一个标记接口。这个标记接口用于给序列化类提供UID。这个uid是依据类中的成员的数字签名进行运行获取的。如果不需要自动获取一个uid,可以在类中,手动指定一个名称为serialVersionUID id号。依据编译器的不同,或者对信息的高度敏感性。最好每一个序列化的类都进行手动显示的UID的指定。


import java.io.*;class ObjectStreamDemo {public static void main(String[] args) throws Exception{writeObj();readObj();}public static void readObj()throws Exception{ObjectInputStream ois = new ObjectInputStream(new FileInputStream("obj.txt"));Object obj = ois.readObject();//读取一个对象。System.out.println(obj.toString());}public static void writeObj()throws IOException{ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("obj.txt"));oos.writeObject(new Person("lisi",25)); //写入一个对象。oos.close();}}class Person implements Serializable{private static final long serialVersionUID = 42L;private transient String name;//用transient修饰后name将不会进行序列化public int age;Person(String name,int age){this.name = name;this.age = age;}public String toString(){return name+"::"+age;}}

0 0
原创粉丝点击