public class Test {
public static void main(String[] args) {
Thread.currentThread().setUncaughtExceptionHandler(new MyExceptionHandler());
for (int i = 10; i >= 0; i--) {
System.out.println(10/i); // будет деление на ноль, а исключени попадет к нам))
}
}
public static class MyExceptionHandler implements Thread.UncaughtExceptionHandler {
@Override
public void uncaughtException(Thread t, Throwable e) { // сюда
System.out.println("Вуаля!");
System.out.println(t.getName() + ": " + e.getClass().getSimpleName());
}
}
}Nik Grape
48 уровень
простой пример использования, может кому поможет понять тему))
Решен
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
velmik
10 августа 2022, 12:47
если я правильно понял то вся заковыка в этой строчке? -
Thread.currentThread().setUncaughtExceptionHandler(new MyExceptionHandler());
Thread.currentThread() - текущий поток
.setUncaughtExceptionHandler - вызов обработчика исключений
(new MyExceptionHandler()); - передав поток и исключение в качестве аргументов.
0
Nik Grape
11 сентября 2021, 05:56решение
решена, просто как пример тут
+10
Vadimayer
25 сентября 2021, 17:07
Виноградина, ты лучшая!
0