Java基础-序列化与反序列化理解要点

关于序列化与反序列化,主要涉及有以下知识点:

  • 序列化指的是将对象转换成字节流;Class的信息和实例数据都会转换成字节流; 反序列化则是其反向的过程,指的是将二进制流的数据转换成对象。
  • 序列化时使用的是ObjectOutputStream类的writeObject方法;而反序列化时使用的是ObjectInputStream中的readObject方法。
  • Serializable接口用于表示某个对象是否可序列化,它并没有实际的方法;主要使用在ObjectOutputStream中,在转换对象时,会判断其类型是否是序列化的,如果不是,则会抛出NotSerializableException异常
  • 一个对象能序列化的前提:
    • 它本身实现了序列化的接口;
    • 它的所有属性全部都能够序列化;

猜你喜欢

转载自blog.csdn.net/icarusliu/article/details/79561774