text: 異常鏈是一種面向物件程式設計技術，指將捕獲的異常包裝進一個新的異常中並重新丟擲的異常處理方式。原異常被儲存為新異常的一個屬性。這個想法是指一個方法應該丟擲定義在相同的抽象層次上的異常，但不會丟棄更低層次的資訊。比如，播放影片檔案的方法可能捕獲讀取檔案過程中的異常，將其包裝在新丟擲的播放影片檔案的異常中。使用者介面部分不需要知道讀取位元組塊、 eof() 呼叫或其他操作時發生的錯誤，這是意外的檔案結尾、讀取錯誤或者其他的錯誤：使用者介面只需要從 "cause" 屬性中提取出異常資訊。使用者介面層會有自身一系列的異常。若對 "cause" 感興趣，可以在除錯期間、或在適當的日誌中檢視異常的堆疊跟蹤資訊。Java 中 受控異常 特別強調了丟擲正確型別的異常，從 Java 1.4版本開始，幾乎所有的異常都支援異常鏈。在執行時環境，比如 Java 或 .Net 中，都有工具連線到執行時引擎；每當感興趣的異常發生，這些工具就記錄下記憶體中的除錯資訊以及丟擲異常的時間功能，它們為生產環境、測試環境、開發環境中的Java程式中出現的的異常提供了"root-cause"資訊。
metadata.dataset: erhwenkuo/wikipedia-zhtw
metadata.title: 異常鏈
metadata.url: https://zh.wikipedia.org/wiki?curid=4564241