パッケージcom.dwz.concurrency.chapter11; / ** スレッドの* runメソッドは例外、唯一のログコンソールを投げるか、プリントアウトしていない * / パブリック クラスThreadException { プライベート 最終的な 静的の int型の A = 10 ; プライベート 決勝 静的に INT B = 0 ; 公共 静的 ボイドメイン(文字列[]引数){ スレッドT = 新しい新しいスレッド(() - > { 試み{ のThread.sleep(5_000); int型の結果= A / B; のSystem.out.println(結果); } キャッチ(InterruptedExceptionあるE){ e.printStackTrace(); } }); // 例外外部スレッドキャプチャすることができ、この方法 t.setUncaughtExceptionHandler((スレッド、E)を- > { System.out.printlnは(E) のSystem.out .println(スレッド); }); t.start(); } }
setUncaughtExceptionHandlerを与えるsetUncaughtExceptionHandler例外処理を使用した後、スレッドは異常出力ログ情報の内側にはもはやありません