1、JDK7新特性是在 try (定义对象,作用域就是try方法体)

复制一个文件实例:

复制文件的原理:

先从硬盘写出到内存中,创建文件输入流对象 FileInputStream fis;

中间是在内存中处理数据,fis需要调用 read 方法遍历每个字节,可以使用数组缓冲区批量读取数据,用一个变量接收读取的数据,

fos再将接收数据的变量写入到硬盘中,while 循环(循环结束的条件),这边结束的条件就是读取的数据接收的变量值为-1,则读取结束,挨个后移的指针停止;

读取一个写入一个;

再从内存中处理数据写入到硬盘中,创建文件输出流对象 FileOutputStream fos;

其中,读取数据写出到内存的文件输入流对象 和 处理数据后写入到硬盘中的文件输出流对象,

都是在 try ()括号中定义;

不用再写finally 方法体,不用再判断对象是否还是初始化的Null;

2、JDK9新特性

在try 之前定义好对象,try () 括号中引入创建好的对象;

还以复制文件为例:

在创建流对象的时候,调用构造方法也是声明了异常的IOException,所以在try 之前调用构造方法创建对象,也是必须处理异常,在外面的大的方法体中 throws 掉;

所以不如使用JDK7的新特性的方便;

最新文章

  1. jquery radio
  2. DSP using MATlAB 示例Example2.10
  3. Release时error c1083 无法打开包括文件
  4. Asianux的SSH登录问题,密码不正确解决
  5. OpenStack:安装Nova
  6. 自己画一个ActivityIndicatorView-b
  7. nginx日志管理与限速
  8. Linux 分区挂载方案
  9. Explain of Interaction Operators in UML?
  10. Apache Derby倒斗之路-01小道消息
  11. 试试看读一下Zepto源码
  12. Java学习路线图分析
  13. python的变量与注释
  14. MySQL之数据表(五)
  15. FieldGroup绑定的日期类型存储格式的问题
  16. byte数组存储到mysql
  17. 【gitlab】创建ssh 秘钥
  18. NodeJS调用jar包
  19. Oracletop10物理段
  20. PSP Daily新增功能说明书

热门文章

  1. Vulnhub -- DC3靶机渗透
  2. 第5篇-调用Java方法后弹出栈帧及处理返回结果
  3. SQL--查询JSON、时间、字符串的高级用法
  4. 管理员权限的窗口,收不到WM_COPYDATA
  5. SpringMVC学习01(什么是SpringMVC)
  6. MongoDB-04-备份和恢复
  7. java8-stream常用操作(1)
  8. 在ASP.NET Core调用WebService
  9. bootstrap 冻结表格,冻结表头
  10. 测试框架unit之assertion断言使用详解