这样写是出于兼容性考虑。

旧版本的JDK中,ArrayList的实现有所不同,会对length字段进行序列化。

而新版的JDK中,对优化了ArrayList的实现,不再序列化length字段。

这个时候,如果去掉s.writeInt(size),那么新版本JDK序列化的对象,在旧版本中就无法正确读取,

因为缺少了length字段。

因此这种写法看起来多此一举,实际上却保证了兼容性。

附上官方解释:defaultReadObject() and defaultWriteObject() should be the first method call inside readObject(ObjectInputStream o) and writeObject(ObjectOutputStream o). It reads and writes all the non-transient fields of the class respectively.

These methods also helps in backward and future compatibility. If in future you add some non-transient field to the class and you are trying to deserialize it by the older version of class then the defaultReadObject() method will neglect the newly added field, similarly if you deserialize the old serialized object by the new version then the new non transient field will take default value from JVM i.e. if its object then null else if primitive then boolean to false, int to 0 etc….

java使用io上传文件_文件传输基础——Java IO流相关推荐

  1. JAVA项目同时上传多个文件和多个内容

    JAVA项目同时上传多个文件和多个内容   首先这俩问题是由一个功能引发的,最近项目中有这样的要求,前端要上传多个文件用于地图描绘那些东西,但只是为了拼到地图上查看一下,并不做保存,这就引发了我的纠结 ...

  2. java实现动态上传多个文件并解决文件重名问题

    java实现动态上传多个文件并解决文件重名问题 参考文章: (1)java实现动态上传多个文件并解决文件重名问题 (2)https://www.cnblogs.com/skycodefamily/p/ ...

  3. java 文件上传漏洞_文件上传漏洞(绕过姿势)

    文件上传漏洞可以说是日常渗透测试用得最多的一个漏洞,因为用它获得服务器权限最快最直接.但是想真正把这个漏洞利用好却不那么容易,其中有很多技巧,也有很多需要掌握的知识.俗话说,知己知彼方能百战不殆,因此 ...

  4. java 文件上传漏洞_文件上传漏洞(File Upload)

    简介 File Upload,即文件上传漏洞,通常是由于对用户上传文件的类型.内容没有进行严格的过滤.检查,使得攻击者可以通过上传木马,病毒,恶意脚本等获取服务器的webshell权限,并进而攻击控制 ...

  5. vue获取上传进度_文件上传与读取实时进度展示-demo(Vue)

    监听进程的方法onprogress 1 )文件读取的progress事件属于FileReader对象. 2 )下载的progress事件属于XMLHttpRequest对象. 3 )上传的progre ...

  6. 上传截断_文件上传路径截断实例

    上传截断pass-13(post00截断):白名单,文件上传路径拼接生成,而且使用了post发送的数据进行拼接,我们可以控制post数据进行0x00截断绕过白名单(这里使用的是php5.2.17+ap ...

  7. Java 后端将上传的 csv 文件转为 Excel xlsx 文件

    一.概述 本地文件是 csv格式,将其转成 xlsx 或者 xls. 二.实现步骤 2.1 获取 csv 文件数据 由于前端的上传文件的数据类型是 MultipartFile,所以就通过获取输入流的方 ...

  8. java将图片上传数据库_〔技巧实例〕轻松实现将上传图片到数据库

    很久就想自己写一写程序了,不过由于赖就不想写我,今天刚好有空,所以写了这个小小的程序很容易一看就知道的,不多说了就此开始: 我们做一个上传的.数据据库的字段就id自动编号 big 字段类型是 OLE ...

  9. java解析c上传十六进制_磕代码c/c++/java:十六进制转十进制

    c: #include int main() { int a=0xABCDEF; printf("%15d",a); } 注:16进制,0x: c++: #include usin ...

  10. java中 byte 取值范围_【二进制基础-java中byte的取值范围-推导过程】

    java中用补码表示二进制数,补码的最高位是符号位,最高位为"0"表示正数,最高位为"1"表示负数. 正数补码为其本身: 负数补码为其绝对值各位取反加1: 例如 ...

最新文章

  1. mysql explain用法和结果的含义
  2. 有些人活着,已经拼尽了全力
  3. java飞行记录器是什么_运行java飞行记录器JFR(java flight recorder)
  4. 富士康筹划在越南建造2.7亿美元新工厂,扩大生产线!
  5. XP无法显示经典模式控制面板
  6. webstorm 配置sass
  7. 组图:1976年蒙特利尔奥运会
  8. pycharm 默认pip安装位置_为什么电脑所有软件默认安装位置都是C盘?
  9. 10款推荐系统模拟器汇总
  10. 589页22万字城市智慧应急指挥中心大数据信息化系统整体设计方案
  11. 数据结构中的“阴”和“阳”
  12. 结算从业人员常用词典1.0
  13. .NET C# 判断用户是手机访问还是电脑访问
  14. Nestjs中使用ElasticSearch操作数据
  15. 如何本地搭建Plex私人影音云盘教程,实现Plex家庭影音中心,打造超级多媒体中心
  16. LeetCode1-400题汇总,希望对你有点帮助!
  17. 计算机组少年宫安全应急预案,拱墅区第十三届中小学生“运河之星”科技节紧急事件应急预案...
  18. python 易盛行情_易盛信息9.0外盘期货行情数据API接口公共授权开发包例子代码...
  19. 江苏省计算机二级ppt版本,江苏省计算机等级考试二级基础知识.ppt
  20. word两栏格式公式居中,编号右对齐

热门文章

  1. 号外号外:Exchange2010SP2已经发布
  2. 暴力解决配置HTTPS后无法使用Hermit
  3. WampServer图标黄色如何解决
  4. 动态设置div的高度_DIV块和文字水平垂直居中,点击弹出文字提示
  5. 禅道备份功能_禅道备份处理
  6. 高德地图输入地址获取经纬度_不打开地图也能获取地址-利用百度地图API和Python实现...
  7. python自定义修饰器_Python进阶自检清单:来自《Effective Python》的建议(二)
  8. lightning接口_苹果、安卓充电接口有望统一,欧盟重压下,苹果将不得不妥协
  9. PAT之树:一般树、二叉树、完全二叉树、二叉搜索树、二叉平衡树、并查集
  10. python 遗传算法 agv_遗传算法在AGV的路径规划中的应用