Java培訓簡述如何處理沒有被捕獲的異常
如何處理沒有被捕獲的異常,文章中會有程式碼列出供大家詳細瞭解。對Java感興趣想要學好技術的小夥伴們隨著小編一起來看一下吧。
在我們的程式中並不是所有的異常都被捕獲,有些是因為我們不想捕獲,因為我們認為那些異常沒必要捕獲,而有些是我們無法捕獲的,因為我們不能確定它們會在什麼地方出現,例如像NullPointerException,ClassCastException,IndexOutOfBoundsException這些RuntimeException。我們也許可以在所有它們有可能發生的地方去捕獲它們,但這確實是很壞的解決方案。但在有些情況下,我們又必須在一些未捕獲的異常發生時做一些事情,像釋放資源、讓程式離開錯誤狀態等等。
這裡透過ThreadGroup提供的一個方法,解決了這個問題,讓我們的程式可以變得更健壯。ThreadGroup提供一個uncaughtException回撥方法,當執行緒組中的執行緒有未被捕獲的異常發生時,JVM就會去呼叫這個方法。
public class ApplicationLoader extends ThreadGroup {
private ApplicationLoader() {
super("ApplicationLoader");
}
public static void main(String args[]) {
Runnable addStarter = new Runnable() {
public void run() {
//在這裡呼叫我們自己的程式的入口函式
//MyApplication.main(args);
}
};
//把我們自己的程式當作這個執行緒組的一個執行緒來執行
new Thread(new ApplicationLoader(), addStarter).start();
}
/*當有未被捕獲的異常發生導致執行緒停止時,這個方法就會被虛擬機器呼叫,我們只要在自己的ThreadGroup子類中override這個方法,在其中對異常進行相應的處理*/
public void uncaughtException(Thread threadf, Throwable e) {
//Handle the Exception
}
}
原始碼時代是專業的Java培訓機構,不僅有專業的老師和與時俱進的課程體系,還有大量的Java線上教程供學員觀看學習,喜歡Java的小夥伴快快行動吧。想要了解更多內容的小夥伴可以登入官網諮詢。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31544234/viewspace-2157365/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 好程式設計師Java培訓分享Java處理異常的幾個小知識程式設計師Java
- JAVA 異常處理Java
- Java 異常處理Java
- JAVA異常處理Java
- 好程式設計師Python培訓分享Python異常處理程式設計師Python
- 異常處理機制(二)之異常處理與捕獲
- JSP 異常處理如何處理?JS
- JAVA_異常處理Java
- Java 異常表與異常處理原理Java
- Java 的異常處理機制Java
- java異常的處理機制Java
- 翻譯 | Java流中如何處理異常Java
- Java中如何處理空指標異常Java指標
- java培訓教程分享:Java中使用者如何自定義異常?Java
- 好程式設計師Java培訓簡述Java新手如何學程式碼程式設計師Java
- java培訓沒有錯 錯的是你沒有好好學Java
- Java異常處理(非常全面)Java
- Java異常處理機制Java
- 重學Java - 異常處理Java
- java異常處理筆記Java筆記
- 如何優雅的處理異常
- Java 中的異常處理機制Java
- 如何處理 Node.js 中出現的未捕獲異常?Node.js
- 異常的處理
- 異常-throws的方式處理異常
- 異常篇——異常處理
- Java之異常處理try{}catch(){}Java
- Java進階02 異常處理Java
- JAVA學習之異常處理Java
- Java 異常處理:使用和思考Java
- gRPC 中的異常該如何處理?RPC
- 什麼是異常?python處理異常的方式有幾種?Python
- Java中的異常處理最佳實踐Java
- Java程式異常處理的特殊情況Java
- 異常處理
- 好程式設計師Python培訓分享Python程式設計中常見的異常處理程式設計師Python
- 簡單的全域性異常統一處理
- java優雅的處理程式中的異常Java