定义:序列化是指将一个对象转换为字节流,以便在网络上传输或者保存到文件中。序列化的过程还可以通过反序列化将字节流重新转化为对象。
序列化的实现方式:通过实现JAVA.IO.Seriliz able接口,该接口是一个标记接口,没有任何方法定义,只要一个类实现了该接口,就表示该类的对象可以被序列化,JAVA序列化机制会根据对象的类结构自动进行序列化和反序列化操作。
实现序列化的类中,通常会定义一个静态常量SerialVersionUID,简单来说就是一个密码,序列化和反序列化密码需要保持一致,否则会抛出异常
使用场景:所有可在网络上传输的对象都必须是可序列化的,比如远程方法调用,传入的参数或者返回的对象都是可序列化的,否则会出错。所有需要保存到磁盘的JAVA对象都必须是可序列化的
通常建议:程序创建的每个JAVA bean类都实现Serialization接口