国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 淺談java7增強的try語句關閉資源

淺談java7增強的try語句關閉資源

2020-11-06 21:02Java教程網(wǎng) Java教程

下面小編就為大家?guī)硪黄獪\談java7增強的try語句關閉資源。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

java7增強的try語句關閉資源

傳統(tǒng)的關閉資源方式

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
 
class Student implements Serializable {
  private String name;
 
  public Student(String name) {
    this.name = name;
  }
}
 
public class test2 {
  public static void main(String[] args) throws Exception {
    Student s = new Student("WJY");
    Student s2 = null;
    ObjectOutputStream oos = null;
    ObjectInputStream ois = null;
    try {
      //創(chuàng)建對象輸出流
      oos = new ObjectOutputStream(new FileOutputStream("b.bin"));
      //創(chuàng)建對象輸入流
      ois = new ObjectInputStream(new FileInputStream("b.bin"));
      //序列化java對象
      oos.writeObject(s);
      oos.flush();
      //反序列化java對象
      s2 = (Student) ois.readObject();
    } finally { //使用finally塊回收資源
      if (oos != null) {
        try {
          oos.close();
        } catch (Exception ex) {
          ex.printStackTrace();
        }
      }
      if (ois != null) {
        try {
          ois.close();
        } catch (Exception ex) {
          ex.printStackTrace();
        }
      }
    }
  }
}

使用finally塊來關閉物理資源,保證關閉操作總是會被執(zhí)行。

關閉每個資源之前首先保證引用該資源的引用變量不為null。

為每一個物理資源使用單獨的try...catch塊來關閉資源,保證關閉資源時引發(fā)的異常不會影響其他資源的關閉。

以上方式導致finally塊代碼十分臃腫,程序的可讀性降低。

java7增強的try語句關閉資源

為了解決以上傳統(tǒng)方式的問題, Java7新增了自動關閉資源的try語句。它允許在try關鍵字后緊跟一對圓括號,里面可以聲明、初始化一個或多個資源,此處的資源指的是那些必須在程序結束時顯示關閉的資源(數(shù)據(jù)庫連接、網(wǎng)絡連接等),try語句會在該語句結束時自動關閉這些資源。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class test2 {
  public static void main(String[] args) throws Exception {
    Student s = new Student("WJY");
    Student s2 = null;
    try (//創(chuàng)建對象輸出流
        ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("b.bin"));
        //創(chuàng)建對象輸入流
        ObjectInputStream ois = new ObjectInputStream(new FileInputStream("b.bin"));
    )
  {
      //序列化java對象
      oos.writeObject(s);
      oos.flush();
      //反序列化java對象
      s2 = (Student) ois.readObject();
    }
 
  }
}

自動關閉資源的try語句相當于包含了隱式的finally塊(用于關閉資源),因此這個try語句可以既沒有catch塊,也沒有finally塊。

注意:

被自動關閉的資源必須實現(xiàn)Closeable或AutoCloseable接口。(Closeable是AutoCloseable的子接口,Closeeable接口里的close()方法聲明拋出了IOException,;AutoCloseable接口里的close()方法聲明拋出了Exception)

被關閉的資源必須放在try語句后的圓括號中聲明、初始化。如果程序有需要自動關閉資源的try語句后可以帶多個catch塊和一個finally塊。

Java7幾乎把所有的“資源類”(包括文件IO的各種類,JDBC編程的Connection、Statement等接口……)進行了改寫,改寫后的資源類都實現(xiàn)了AutoCloseable或Closeable接口

以上這篇淺談java7增強的try語句關閉資源就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持服務器之家。

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 成人免费视频网 | 天天干人人| 精品在线播放 | 激情欧美日韩一区二区 | 三级在线观看网站 | 亚洲成人看片 | 最近最新mv字幕免费观看 | 夜夜福利 | 欧美人妖在线 | 久久九九99 | 亚洲欧美激情精品一区二区 | 国产视频一区二区 | 亚洲福利一区二区 | 中文字幕亚洲一区二区三区 | 久久久久久高清 | caoporn免费| 欧美日韩在线电影 | av成人一区二区 | 欧美精品日韩精品 | 久久久www成人免费无遮挡大片 | 欧美日韩成人一区二区 | 中文字幕亚洲国产 | 日韩综合网 | 国产精品尤物 | 日日操综合 | 狠狠干天天草 | 亚洲一区在线视频 | 伊人青青操| 亚洲国产一级 | 亚洲综合大片69999 | 亚洲综合视频在线 | 亚洲精品一区二区三区不 | 国产精品亚洲综合 | 亚洲aaa在线观看 | 性色av一区二区三区 | 在线一二三区 | 国产黄色免费网站 | 免费观看黄视频 | 国产精品免费视频观看 | 亚洲日本欧美日韩高观看 | 一区在线观看 |