java.lang.NoClassDefFoundError可以捕获
原本以为类不存在的Error不能捕获,想不到是可以的,记录一下。注意,这和反射遇到的“java.lang.ClassNotFoundException”是不一样的。
?
以下代码,编译完后,我删除了Demo$T2.class,如果不添加try-catch,会出现:
?
添加了tay-catch之后,就打印“捕获了Error”
?
package com.atell;import java.io.IOException;public class Demo { public static void main(String[] args) throws IOException, InterruptedException, ClassNotFoundException { try { T2.x = 9; } catch (Error e) { System.out.println("捕获了Error"); } } static class T2 { static int x; }}