首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

ArrayList的elementData宣言为transient,为什么还可以序列化?<转>

2012-11-05 
ArrayList的elementData声明为transient,为什么还可以序列化?转mmmmmmmmmmnullnnnnnnnnnnnull 从输出结

ArrayList的elementData声明为transient,为什么还可以序列化?<转>

mmmmmmmmmm   null  nnnnnnnnnn   null 

从输出结果来看,数组序列化时,不管是否有值,都会将整个数组序列化到文件中。
由此可以看出,比较靠谱的原因是:
ArrayList是会开辟多余空间来保存数据的,而系列化和反序列化这些没有存放数据的空间是要消耗更多资源的,所以ArrayList的数组就声明为transient,告诉虚拟机这个你别管,我自己来处理,然后就自己实现write/readObject方法,仅仅系列化已经存放的数据。

热点排行