effect java 学习摘要(9)
来源:互联网 发布:hp网络交换机 编辑:程序博客网 时间:2024/06/06 11:09
Serializable接口
将一个对象编码成一个字节流 , 称为对象序列化.
Serializable接口 实现的代价 :
- 一旦一个类被发布, 就大大降低了”改变这个类的实现”的灵活性 ; 序列化类的唯一标识符 是 序列版本 UID .
- 它增加了出现bug和安全漏洞的可能性
- 随着类发行新的版本 , 相关的测试负担也增加了
要点 :
- 为了继承而设计的类应该尽可能少地去实现Serializable.
- 对于为继承而设计的不可序列化的类 , 你应该考虑提供一种无参构造器.
- 内部类不应该实现Serializable.
自定义的序列化形式
使用默认的序列化形式是合适的 , 通常还必须提供一个readObject方法以保证约束关系和安全性.
使用默认序列化形式,会有以下缺点 :
- 使这个类的导出API永远地束缚在该类的内部表示法上
- 它会消耗过多的空间
- 它会消耗过多的时间
- 它会引起栈溢出
如果在读取整个对象状态的任何其他方法上强制任何同步, 则也必须在对象序列化上强制这种同步
为每个可序列化的类声明一个显式的序列版本UID
阅读全文
0 0
- effect java 学习摘要(9)
- effect java 学习摘要(1)
- effect java 学习摘要(2)
- effect java 学习摘要(3)
- effect java 学习摘要(4)
- effect java 学习摘要(5)
- effect java 学习摘要(6)
- effect java 学习摘要(7)
- effect java 学习摘要(8)
- Java虚拟机学习摘要
- java IO流学习摘要
- cocos2d-x学习笔记(9)--effect(特效)
- 《Effect C++》学习------基本知识
- 学习笔记摘要 JAVA基础不行
- java编程思想-内部类-学习摘要
- java编程思想-异常处理-学习摘要
- java编程思想-字符串-学习摘要
- Java设计模式学习笔记摘要
- Hibernate的增删查改
- css 盒子模型理解
- lua 计算n的阶乘
- vijos 1565 多边形
- 问题:The MySQL server is running with the --skip-grant-tables option
- effect java 学习摘要(9)
- 算法提高 ADV-13 最小乘积(提高型)
- numpy的newaxis使用
- zoj2849Attack of Panda Virus
- Java中的常用术语
- web前端面试题
- springMVC结合hibernate validator校验数据
- 梯度下降法
- 数据结构