亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

創建自己的違例

2019-11-18 13:19:47
字體:
來源:轉載
供稿:網友

  并不一定非要使用java違例。這一點必須把握,因為經常都需要創建自己的違例,以便指出自己的庫可能生成的一個非凡錯誤——但創建Java分級結構的時候,這個錯誤是無法預知的。
  為創建自己的違例類,必須從一個現有的違例類型繼續——最好在含義上與新違例近似。繼續一個違例相當簡單:
  
  //: Inheriting.java
  // Inheriting your own exceptions
  
  class MyException extends Exception {
   public MyException() {}
   public MyException(String msg) {
    super(msg);
   }
  }
  
  public class Inheriting {
   public static void f() throws MyException {
    System.out.PRintln(
     "Throwing MyException from f()");
    throw new MyException();
   }
   public static void g() throws MyException {
    System.out.println(
     "Throwing MyException from g()");
    throw new MyException("Originated in g()");
   }
   public static void main(String[] args) {
    try {
     f();
    } catch(MyException e) {
     e.printStackTrace();
    }
    try {
     g();
    } catch(MyException e) {
     e.printStackTrace();
    }
   }
  } ///:~
  
  繼續在創建新類時發生:
  
  class MyException extends Exception {
   public MyException() {}
   public MyException(String msg) {
    super(msg);
   }
  }
  
  這里的要害是“extends Exception”,它的意思是:除包括一個Exception的全部含義以外,還有更多的含義。增加的代碼數量非常少——實際只添加了兩個構建器,對MyException的創建方式進行了定義。請記住,假如我們不明確調用一個基礎類構建器,編譯器會自動調用基礎類默認構建器。在第二個構建器中,通過使用super要害字,明確調用了帶有一個String參數的基礎類構建器。
  該程序輸出結果如下:
  
  Throwing MyException from f()
  MyException
      at Inheriting.f(Inheriting.java:16)
      at Inheriting.main(Inheriting.java:24)
  Throwing MyException from g()
  MyException: Originated in g()
      at Inheriting.g(Inheriting.java:20)
      at Inheriting.main(Inheriting.java:29)
  
  可以看到,在從f()“擲”出的MyException違例中,缺乏具體的消息。
  創建自己的違例時,還可以采取更多的操作。我們可添加額外的構建器及成員:
  
  //: Inheriting2.java
  // Inheriting your own exceptions
  
  class MyException2 extends Exception {
   public MyException2() {}
   public MyException2(String msg) {
    super(msg);
   }
   public MyException2(String msg, int x) {
    super(msg);
    i = x;
   }
   public int val() { return i; }
   private int i;
  }
  
  public class Inheriting2 {
   public static void f() throws MyException2 {
    System.out.println(
     "Throwing MyException2 from f()");
    throw new MyException2();
   }
   public static void g() throws MyException2 {
    System.out.println(
     "Throwing MyException2 from g()");
    throw new MyException2("Originated in g()");
   }
   public static void h() throws MyException2 {
    System.out.println(
     "Throwing MyException2 from h()");
    throw new MyException2(
     "Originated in h()", 47);
   }
   public static void main(String[] args) {
    try {
     f();
    } catch(MyException2 e) {
     e.printStackTrace();
    }
    try {
     g();
    } catch(MyException2 e) {
     e.printStackTrace();
    }
    try {
     h();
    } catch(MyException2 e) {
     e.printStackTrace();
     System.out.println("e.val() = " + e.val());
    }
   }
  } ///:~
  
  此時添加了一個數據成員i;同時添加了一個非凡的方法,用它讀取那個值;也添加了一個額外的構建器,用它設置那個值。輸出結果如下:
  
  Throwing MyException2 from f()
  MyException2
      at Inheriting2.f(Inheriting2.java:22)
      at Inheriting2.main(Inheriting2.java:34)
  Throwing MyException2 from g()
  MyException2: Originated in g()
      at Inheriting2.g(Inheriting2.java:26)
      at Inheriting2.main(Inheriting2.java:39)
  Throwing MyException2 from h()
  MyException2: Originated in h()
      at Inheriting2.h(Inheriting2.java:30)
      at Inheriting2.main(Inheriting2.java:44)
  e.val() = 47
  
  由于違例不過是另一種形式的對象,所以可以繼續這個進程,進一步增強違例類的能力。但要注重,對使用自己這個包的客戶程序員來說,他們可能錯過所有這些增強。因為他們可能只是簡單地尋找預備生成的違例,除此以外不做任何事情——這是大多數Java庫違例的標準用法。若出現這種情況,有可能創建一個新違例類型,其中幾乎不包含任何代碼:
  //: SimpleException.java
  class SimpleException extends Exception {
  } ///:~
  它要依靠編譯器來創建默認構建器(會自動調用基礎類的默認構建器)。當然,在這種情況下,我們不會得到一個SimpleException(String)構建器,但它實際上也不會經常用到。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美性猛交xxxx乱大交极品| 亚洲天天在线日亚洲洲精| 亚洲已满18点击进入在线看片| 国产国语刺激对白av不卡| 国产亚洲一区二区在线| 欧美精品电影在线| 亚洲人精品午夜在线观看| 91黑丝在线观看| 中国日韩欧美久久久久久久久| 日本亚洲精品在线观看| 亚洲国产成人91精品| 国产精品激情av电影在线观看| 最好看的2019的中文字幕视频| 国产精品免费一区二区三区都可以| 久久噜噜噜精品国产亚洲综合| 国产精品一区二区女厕厕| 亚洲摸下面视频| 欧美一区二区三区免费观看| 97**国产露脸精品国产| 在线电影欧美日韩一区二区私密| 欧美性xxxxhd| 久久97久久97精品免视看| 7777免费精品视频| 国产91精品久久久久久| 亚洲精品色婷婷福利天堂| 91久热免费在线视频| 国产一区二区三区高清在线观看| 最近2019年手机中文字幕| 最新国产精品亚洲| 日本午夜在线亚洲.国产| 91成人国产在线观看| 久久久爽爽爽美女图片| 欧美午夜片欧美片在线观看| 国产精品亚洲片夜色在线| 久久久亚洲影院你懂的| 国产一区二区黄| 精品一区精品二区| 欧美裸身视频免费观看| 国产亚洲日本欧美韩国| 精品国产视频在线| 色综合色综合久久综合频道88| 亚洲精品suv精品一区二区| 国产97在线视频| 国产精品久久久久久久美男| 日韩免费av片在线观看| 亚洲精品午夜精品| 欧美成人精品一区二区| 日韩在线观看免费高清| 91亚洲午夜在线| 日本在线精品视频| 亚洲欧美日韩精品久久| 欧美成人精品xxx| 国产精品三级美女白浆呻吟| 欧美性高潮床叫视频| 日韩精品免费在线播放| 国产一区玩具在线观看| 亚洲欧美一区二区精品久久久| 色婷婷成人综合| 91精品国产高清久久久久久91| 懂色av影视一区二区三区| 91精品国产99| 黄网站色欧美视频| 成人精品一区二区三区电影免费| 亚洲黄色片网站| 欧美精品在线观看91| 欧美一性一乱一交一视频| 日韩欧美亚洲成人| 亚洲xxx自由成熟| 亚洲自拍小视频免费观看| 午夜精品久久久久久久99黑人| 8x海外华人永久免费日韩内陆视频| 91精品国产乱码久久久久久蜜臀| 国产精品亚洲美女av网站| 庆余年2免费日韩剧观看大牛| 欧美亚洲国产精品| 色老头一区二区三区| 久久久国产91| 久久久久久久久国产精品| 欧美人与性动交| 成人在线中文字幕| 国产精品久久久久久久久久久久久| 欧美精品videosex性欧美| 久久久久中文字幕2018| 综合av色偷偷网| 国内精品一区二区三区| 日本高清不卡在线| 91精品视频观看| 91社区国产高清| 久久成人一区二区| 57pao成人永久免费视频| 精品视频在线观看日韩| 国产精品旅馆在线| 亚洲一区二区三区成人在线视频精品| 国产精品黄视频| 97视频免费观看| 日韩有码在线观看| 国外日韩电影在线观看| 日韩在线观看免费全集电视剧网站| 久久久久久久影院| 亚洲电影第1页| 欧美亚洲一区在线| 日韩激情视频在线| 亚洲第一精品久久忘忧草社区| 国产在线视频2019最新视频| 免费97视频在线精品国自产拍| 久久手机免费视频| 97涩涩爰在线观看亚洲| 日韩av一区在线| 国产专区欧美专区| 精品成人久久av| 久久久国产精品一区| 欧美成人精品在线观看| 国模精品视频一区二区三区| 亚洲精品二三区| 亚洲国产精品久久| 国产裸体写真av一区二区| 亚洲天堂视频在线观看| 亚洲午夜国产成人av电影男同| 久久99热精品| 精品夜色国产国偷在线| 一区二区三区精品99久久| 亚洲自拍偷拍视频| 亚洲欧美在线播放| 一区二区三区国产在线观看| 在线中文字幕日韩| 国产精品视频久久久久| 亚洲久久久久久久久久| 国产精品96久久久久久又黄又硬| 欧美电影免费在线观看| 一区二区三区久久精品| 亚洲欧美日韩图片| 国内外成人免费激情在线视频网站| www.欧美三级电影.com| 精品久久久久久国产91| 97超碰蝌蚪网人人做人人爽| 国产成人精品av| 亚洲码在线观看| 亚洲网站视频福利| 精品国产区一区二区三区在线观看| 色悠久久久久综合先锋影音下载| 亚洲国产成人精品女人久久久| 欧美视频专区一二在线观看| 成人在线观看视频网站| 精品国产鲁一鲁一区二区张丽| 91免费精品国偷自产在线| 国产欧美精品在线| 日韩在线播放一区| 高跟丝袜一区二区三区| 国产精品美女呻吟| 亚洲热线99精品视频| 国产精品96久久久久久又黄又硬| 久青草国产97香蕉在线视频| 国产精品夫妻激情| 国产精品视频yy9099| 亚洲欧洲高清在线| 8x拔播拔播x8国产精品| 欧美高清电影在线看| 91系列在线观看| 久久久精品一区二区三区| 日本中文字幕成人| 亲爱的老师9免费观看全集电视剧| 欧美午夜精品久久久久久浪潮| 亚洲综合视频1区| 国内精品400部情侣激情|