为什么List,set,map 不继承Serializable接口

为什么List,set,map 不继承Serializable接口?

 

猜测:应该是默认不继承,但实际上可以继承


只要是object都可以实现这个接口



只是默认不这样干,有三个可能

一、是不知道怎么实现默认接口,

二、不允许实现默认接口,

三、暂时没有实现方案。

解释:

假如是情况一,不知道怎么实现,可以理解为对集合的元素类型有依赖,这种单向依赖导致在不明确元素类型的情况下无法实现默认Serializable接口



情况二,不允许实现默认接口,这种大多由Serializable接口规定,但是Serializable接口并没有声明哪些类不允许实现这个接口,集合类也没有明确说不允许implement这个接口。所以这个情况也不存在



情况三,讨论这个没有意义。



结论,对集合的元素类型有依赖,这种单向依赖导致在不明确元素类型的情况下无法实现默认Serializable接口

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章