• 序列化


    序列化

    序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。

    将java对象从文件中恢复称为 反序列化 DeSerializetion。

    参与序列化和反序列化的对象必须实现Serializeable接口。

    Serializeable只是一个标志性接口,java虚拟机看到了类实现了这个接口。jvm会默认提供这个序列化版本号。

    当你想序列化多个对象,可以将多个对象装载到一个集合(或其他容器)。集合元素以及集合都需要实现Serializeable接口。

    如果希望一些属性不参加序列化(不将数据存储到磁盘)。可以添加Transient属性。

    java比较序列化对象的主要从两个方面来区分:

    1. 类名
    2. 序列化版本号

    当实现了Serialize接口以后,java会自动生成序列化版本号。但是自动生成序列化版本号存在有缺点。

    也就是不能修改类代码,因为单例修改了类代码之前序列化的对象会被认为和这个类不同,因为尽管类名相同,但是由于修改了类代码,序列化版本号被重新提供了。所以凡是实现了Serializable接口的类建议自己指定序列号版本号。

  • 相关阅读:
    table 表格的增删和修改
    js实现单双行文本溢出添加省略号
    C++
    PAT乙级 1029 旧键盘 (C++ python3)
    图论
    图论
    图论
    springcloud(二):注册中心Eureka
    apollo配置中心初探
    Apollo 配置详细步骤(Windows环境)
  • 原文地址:https://www.cnblogs.com/freesfu/p/13760932.html
Copyright © 2020-2023  润新知