JDK7和JDK9流中异常的处理
生活随笔
收集整理的這篇文章主要介紹了
JDK7和JDK9流中异常的处理
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
package com.learn.demo06.trycatch;import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;/*JDK7的新特性在try的后邊可以增加一個(),在括號中可以定義流對象那么這個流對象的作用域就在try中有效try中的代碼執行完畢,會自動把流對象釋放,不用寫finally格式:try(定義流對象;定義流對象....){可能會產出異常的代碼}catch(異常類變量 變量名){異常的處理邏輯}*/
public class Demo02JDK7 {public static void main(String[] args) {try(//1.創建一個字節輸入流對象,構造方法中綁定要讀取的數據源FileInputStream fis = new FileInputStream("c:\\1.jpg");//2.創建一個字節輸出流對象,構造方法中綁定要寫入的目的地FileOutputStream fos = new FileOutputStream("d:\\1.jpg");){//可能會產出異常的代碼//一次讀取一個字節寫入一個字節的方式//3.使用字節輸入流對象中的方法read讀取文件int len = 0;while((len = fis.read())!=-1){//4.使用字節輸出流中的方法write,把讀取到的字節寫入到目的地的文件中fos.write(len);}}catch (IOException e){//異常的處理邏輯System.out.println(e);}}
}
package com.learn.demo06.trycatch;import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;/*JDK9新特性try的前邊可以定義流對象在try后邊的()中可以直接引入流對象的名稱(變量名)在try代碼執行完畢之后,流對象也可以釋放掉,不用寫finally格式:A a = new A();B b = new B();try(a,b){可能會產出異常的代碼}catch(異常類變量 變量名){異常的處理邏輯}*/
public class Demo03JDK9 {public static void main(String[] args) throws IOException {//1.創建一個字節輸入流對象,構造方法中綁定要讀取的數據源FileInputStream fis = new FileInputStream("c:\\1.jpg");//2.創建一個字節輸出流對象,構造方法中綁定要寫入的目的地FileOutputStream fos = new FileOutputStream("d:\\1.jpg");try(fis;fos){//一次讀取一個字節寫入一個字節的方式//3.使用字節輸入流對象中的方法read讀取文件int len = 0;while((len = fis.read())!=-1){//4.使用字節輸出流中的方法write,把讀取到的字節寫入到目的地的文件中fos.write(len);}}catch (IOException e){System.out.println(e);}//fos.write(1);//Stream Closed}
}
?
總結
以上是生活随笔為你收集整理的JDK7和JDK9流中异常的处理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用try_catch_finally处
- 下一篇: 使用Properties集合存储数据,遍