为什么Java需要可序列化接口?

为什么Java需要可序列化接口?

我们大量使用序列化,并且必须在我们使用的每个对象上指定可序列化标记,这是一种负担。尤其是当我们不能真正改变的第三方阶级的时候。

问题是:既然Serialable是一个空接口,而且Java一旦添加,就会提供健壮的序列化implements Serializable-他们为什么不把所有的东西都串连起来-就这样?

我遗漏了什么?


心有法竹
浏览 866回答 3
3回答

守候你守候我

在Java中,Serialable的主要作用是在默认情况下使所有其他对象都不可序列化。序列化是一种非常危险的机制,特别是在其默认实现中。因此,就像C+中的友谊一样,默认情况下它是关闭的,即使事物可串行化需要花费一些费用。序列化会增加约束和潜在的问题,因为结构兼容性没有得到保证。这是好的,它是关闭的默认。我不得不承认,我很少看到标准序列化可以实现我想要的那些非常重要的类。特别是在复杂数据结构的情况下。因此,要使类可序列化,所花费的精力比添加接口的成本要小得多。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java