try…catch…finally的做法 try{ 可能出现异常的代码; }catch(异常类名 变量名){ 异常的处理代码; }finally{ 执行所有的资源释放操作; } JDK7改进方案 try(定义流对象){ 可能出现异常的代码; }catch(异常类名 变量名){ 异常的处理代码; } 自动释放资源 JDK9改进方案 定义输入流对象; 定义输出流对象; try(输入流对象名;输出流对象){ 可能出现异常的代码; }catch(异常类名 变量名){ 异常的处理代码; } 自动释放资源