一般来说,让简单的POJO
Java类实现java.io.Serializable是一种最佳实践吗?
解决方法
一般不是. Joshua Bloch对
implement Serializable judiciously说.他描述了一些缺点:
>降低了以后更改类实现的灵活性 – 序列化表单是类API的一部分
>更有可能出现一些错误和安全漏洞 – 攻击者可以访问序列化字节流中的类内部
>增加测试负担 – 现在你必须测试序列化!
>加载子类的作者 – 他们也必须使他们的子类Serializable
当然,有时你需要一个POJO来实现Serializable,比如RMI,但如果不需要,你的代码将更简单,更安全.