什么是序列化
把对象或者结构体从内存中变成可存储或传输的过程称之为序列化。序列化是将一个对象转换成字节流(byte[],或者叫字符串,2进制串)以达到将其长期保存在内存、数据库或文件中的处理过程。它的主要目的是保存对象的状态以便以后需要的时候使用。序列化后的内容如果是为了方便以后需要的时候使用,自然是二进制序列化较好。Soap,XML,json ,protobuf序列化更多的是为了交换数据用的。
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.io.Serializable;
//序列化必须实现Serializable接口
public class Xu {
public static void main(String[] args) throws IOException {
SerializableTest slb = new SerializableTest();
slb.setName("zs");
FileOutputStream file = new FileOutputStream(new File("d:\\a.txt"));
ObjectOutputStream obj = new ObjectOutputStream(file);
obj.writeObject(slb);
}
}
class SerializableTest implements Serializable{
private static char SEX = '男'; // 常量不参与序列化
transient private String car; // 以transient修饰的不参与序列化
private static String name;
private static int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}