Никак не получается с рекурсией сделать. Читал советы, вроде делаю по ним. но вывод сначала null, потом самый глубокий стек, потом средний.
null
java.lang.IllegalAccessException: GHI
java.lang.RuntimeException: DEF
Как здесь праВильно организовать все именно с рекурсией, хочется разобраться с ней уже для себя
package com.javarush.task.task25.task2512;
import java.util.LinkedList;
import java.util.List;
/*
Живем своим умом
*/
public class Solution implements Thread.UncaughtExceptionHandler {
@Override
public void uncaughtException(Thread t, Throwable e) {
t.interrupt();
// if (e.getCause() != null)
recurs(e);
// System.out.println(e.getCause());
}
public void recurs (Throwable e) {
if (e.getCause() != null) recurs (e.getCause());
System.out.println(e.getCause());
}
public static void main(String[] args) {
Thread t = new Thread() {
@Override
public void run() {
throw new RuntimeException
("ABC", new Exception
("DEF", new IllegalAccessException("GHI")));
}
};
t.setUncaughtExceptionHandler(new Solution());
t.start();
}
}