一、checked异常和unchecked异常区别?
checked异常是编译时可以推断出来可能发生异常,ide会提示,比如ioexception、interruptExcetion;
unchecked异常是运行时异常,比如OutOfBounceExcetion
二、线程异常
因为run方法没有checked异常,所以线程异常在父线程中是捕获不到的
1.线程内try{}catch
2.设置某个线程或所有线程的“未捕获异常处理器“
3.线程池提交有返回结果的方法,则可以通过future.get()执行时捕获异常信息
三、error、throwable、exception的区别
1.error是程序无法处理的错误,一般和开发人员无关,是jvm上的错误
2.throwable是异常的弗雷,exception是子类