我试图理解JAVA中的throws子句,我写了以下内容
一段代码:
class check
{
static void demo()
{
System.out.println("Hello\n");
throw new IllegalAccessException("demo");
}
public static void main(String args[])
{
demo();
}
}
我知道它不会编译,因为必须处理异常
在main方法中,并且demo()应该通过指定throws来定义
IllegalAccessException的子句。
但是当我将异常更改为NullPointerException时,相同的
程序编译并执行:
class check
{
static void demo()
{
System.out.println("Hello\n");
throw new NullPointerException("Demo");
}
public static void main(String args[])
{
demo();
}
}