<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>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ?# 第三章第三節-拋出異常 標簽(空格分隔): 廖雪峰 --- ## 異常的傳播 - 如果當前方法沒有捕獲異常,異常就會被拋到上層調用方法. - 如果上層也未捕獲,會一直向上拋.知道遇到`try catch`為止,或者在main中聲明throw. - `exception.printStackTrace`可以打印異常調用棧,在debug的時候很有效. ## 如何拋出 - 創建某個`Exception`的實例. - 使用throw語句拋出. ## 轉換異常 如果一個方法捕獲了某個異常之后,又在`catch`子句中拋出新的異常,就相當于把拋出的異常轉換成新的異常.新的異常有是否帶參數兩種方式,帶參數的話就相當于保留了之前的異常棧,如果無參數就相當于舍棄了異常棧,即無法追蹤到最開始導致出錯的地方. ## finally中的執行順序. ```java try{ 語句1 } catch{ 語句2 throw new Exception() } finally{ 語句3 } ``` 執行的順序是:語句1,語句2,語句3,然后拋出新的異常. 若: ```java try{ 語句1 } catch{ 語句2 throw new Exception1() } finally{ 語句3 throw new Exception2() } ``` 執行的順序是:語句1,語句2,語句3,異常2(異常1則會被忽略). **最好不要在finally中拋出異常** ## 小節小結 - printStackTrace()打印異常的傳播棧,對于調試非常好用. - 捕獲異常并在此拋出時異常時(異常轉換),應該保留原始異常的信息(含參數創建). - 如果在finally中拋出異常,應該把新的異常添加在原有異常中,不然原有異常會被忽略(復雜變換未記錄). - 使用getSuppressed()可以獲取所有添加的SuppressedException. - 處理SuppressedException要求大于1.7.
                  <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>

                              哎呀哎呀视频在线观看