Android序列化实现
那么什么是序列化?为什么需要使用序列化?
序列化可以简单地理解为将对象转化为流,它是一种用来处理对象流的机制。可以对流化后的对象持续化到存储设备上,也可将流化后的对象传输于网络之间。利用对象序列化可以进行对象的“深复制”,即复制对象本身及引用的对象本身。
Android实现序列化的方法
继承Serializable接口
Serializable是Java提供的序列化接口,为对象提供了标准的序列化和反序列化操作。使用方法如下:
public class User implements Serializable{
private static final long serialVersionUID = 1L;
private String username;
...
}
serialVersionUID并不是必须的,不声明同样可以实现序列化,但是会对反序列化过程产生影响。
User user=new User();
//序列化过程
ObjectOutputStream ous=new ObjectOutputStream(new FileOutputStream("cache.txt"));
ous.writeObject(user);
ous.close();
//反序列化过程
ObjectInputStream ois=new ObjectInputStream(new FileInputStream("cache.txt"));
User user1= (User) ois.readObject();
ois.close();