<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ## [異常匹配](https://lingcoder.gitee.io/onjava8/#/book/15-Exceptions?id=%e5%bc%82%e5%b8%b8%e5%8c%b9%e9%85%8d) 拋出異常的時候,異常處理系統會按照代碼的書寫順序找出“最近”的處理程序。找到匹配的處理程序之后,它就認為異常將得到處理,然后就不再繼續查找。 查找的時候并不要求拋出的異常同處理程序所聲明的異常完全匹配。派生類的對象也可以匹配其基類的處理程序,就像這樣: ~~~ // exceptions/Human.java // Catching exception hierarchies class Annoyance extends Exception {} class Sneeze extends Annoyance {} public class Human { public static void main(String[] args) { // Catch the exact type: try { throw new Sneeze(); } catch(Sneeze s) { System.out.println("Caught Sneeze"); } catch(Annoyance a) { System.out.println("Caught Annoyance"); } // Catch the base type: try { throw new Sneeze(); } catch(Annoyance a) { System.out.println("Caught Annoyance"); } } } ~~~ 輸出為: ~~~ Caught Sneeze Caught Annoyance ~~~ Sneeze 異常會被第一個匹配的 catch 子句捕獲,也就是程序里的第一個。然而如果將這個 catch 子句刪掉,只留下 Annoyance 的 catch 子句,該程序仍然能運行,因為這次捕獲的是 Sneeze 的基類。換句話說,catch(Annoyance a)會捕獲 Annoyance 以及所有從它派生的異常。這一點非常有用,因為如果決定在方法里加上更多派生異常的話,只要客戶程序員捕獲的是基類異常,那么它們的代碼就無需更改。 如果把捕獲基類的 catch 子句放在最前面,以此想把派生類的異常全給“屏蔽”掉,就像這樣: ~~~ try { throw new Sneeze(); } catch(Annoyance a) { // ... } catch(Sneeze s) { // ... } ~~~ 此時,編譯器會發現 Sneeze 的 catch 子句永遠得不到執行,因此它會向你報告錯誤。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看