74,谨慎的实现Serializable接口。实现这个接口要付出若干代价:1,类发布以后,内部实现就不好修改了;2,增加了出bug和安全漏洞的可能性;3,发布新版本的时候增加了测试负担,因为要增加对二进制兼容性和语义兼容性的测试。这一条里还提到为了继承而设计的类应该尽可能少的去实现Serializable接口。Struts1的ActionForm就实现了这个接口,你还必须得继承它,到了Struts2就没这个限制了,确实进步了很多。
75,考虑使用自定义的序列化形式。这个还真没用过。默认表示形式有4个坏处:1,它使类的导出API永远束缚在该类的内部表示方法上;2,它会消耗过多的空间;3,它会消耗过多的时间;4,它会引起栈溢出。还有一点要注意的是,不管你选择了哪种序列化方式,都要为可序列化的类生成一个serial version UID。
76,保护性的编写readObject方法。
77,对于实例控制,枚举类型优先于readResolve。
78,考虑用序列化代理代替序列化实例。
对于序列化,平时用的并不多,而且java序列化的效率一贯为人诟病,这几条也就是看看,如果将来有用到的时候,再看看吧。
这本书终于算是看完了,确实是好书,有些常用的部分,看起来很有“确实如此,就该这样”的感觉,不过呢,接触少的部分,比如序列化,看起来就有点儿无聊,因为没太多的了解。其实我觉得也不需要什么都懂,大概知道一下,出问题的时候知道能从哪里入手去解决就好了。
分享到:
相关推荐
effective java 读书笔记,第二版自己摘要并翻译,以备速查。
Effective Java读书笔记.pdf
2021年EFFECTIVEJAVA读书笔记.docx
Effective-Java读书笔记,别人分享的
基于Effective Java第二版的读书笔记,可以帮助你更好的阅读这边Java圣经,更快的理解其思想
Effective Java读书笔记,记载了大部分我觉的有用的东西,前半部分有代码说明,但后半部分的代码,太过琐碎,就没有整理
安卓艺术开发探索读书笔记,EffectiveJava读书笔记. 收集各大神博客以及安卓笔记,安卓面试笔记等方便手机端查看. 更新说明 v2.2.2 1.增加了一些最近在学习比较好的安卓大神的博客. 2.增加了来自GeniusVJR整理的安卓...
loveincode's notes 学习工作中的一些记录,收藏。 操作系统 , 编译原理 , 计算机网络 , 互联网协议... 常用数据结构与算法 Java 实现 数据结构 与 排序算法 ...读书笔记 Effective Java , HTTP权威指南 , Java
java软件笔试题 my notebook 我的笔记本,大部分是在大二大三的时候写的笔记,对于已经毕业的来说可能比较基础甚至naive。...7:读书笔记 thinking in java effective java Android开发艺术探索 Android插件化开发指南
作者HotBitmapGG,源码StudyProject,一款 Material Design 风格的 AndroidRank 干货学习客户端,需要...安卓艺术开发探索读书笔记,EffectiveJava 读书笔记. 收集各大神博客以及安卓笔记,安卓面试笔记等方便手机端查看.
Essential .NET 读书笔记 [第一部分] NET FrameWork的Collections支持 .NET的反射在软件设计上的应用 关于跨程序集的反射 实现C#和VB.net之间的相互转换 深入剖析ASP.NET组件设计]一书第三章关于ASP.NET运行原理讲述...