【慕课笔记】6-2 transient及ArrayList源码分析
2016-03-17 17:53
232 查看
6-2 transient及ArrayList源码分析
transient关键字:
如果第一节Student类中的stuage的声明 private int stuage改成private transient int stuage
则该元素不会进行jvm默认的序列化,且不代表不能进行序列化,可以自己完成这个元素的序列化
执行的结果 stuage=0
ArrayList是把数组的有效元素序列化,无效元素则无需序列化。
transient关键字:
如果第一节Student类中的stuage的声明 private int stuage改成private transient int stuage
则该元素不会进行jvm默认的序列化,且不代表不能进行序列化,可以自己完成这个元素的序列化
执行的结果 stuage=0
ArrayList是把数组的有效元素序列化,无效元素则无需序列化。
private void writeObject(java.io.ObjectOutputStream s) throws java.io.IOException{ s.defaultWriteObject();//把jvm能默认序列化的元素进行序列化操作 s.writeInt(stuage);//自己完成stuage的序列化 } private void readObject(java.io.ObjectInputStream s) throws java.io.IOException,ClassNotFoundException{ s.defaultReadObject();//把jvm能默认反序列化的元素进行反序列化操作 this.stuage=s.readInt();//自己完成stuage的反序列化操作 }
相关文章推荐
- 连接ftp服务器失败
- ISR和DPC
- php 操作数组 (合并,拆分,追加,查找,删除等)
- 十位用户唯一ID生成策略
- 常见的网站服务器架构有哪些(转载)
- IOS :切回app时、会有闪现、闪现一次主屏幕的现象
- VS2013调用matlab生成的dll
- Git常用命令
- php缩放gif和png格式透明背景变成黑色的解决方法
- 最长公共子序列 空间优化最长公共子序列
- GZIP --压缩
- 数据库完整性
- CSS3 不定宽高水平居中
- 开始使用CefSharp(这次使用nuget)
- 关于附加数据库出错,请单击"消息"列的超链接的解决方案
- 根据两点经纬度计算距离
- Android mvp 架构的自述
- Android安全–从defineClassNative看类的加载过程
- Core Animation - 变换<四>
- 布局属性之布局中控件同时响应选择器效果