Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中,我们抛出的异常不会被默认处理程序捕获?赖特_Java_Exception Handling - Fatal编程技术网

在Java中,我们抛出的异常不会被默认处理程序捕获?赖特

在Java中,我们抛出的异常不会被默认处理程序捕获?赖特,java,exception-handling,Java,Exception Handling,但是在下面的程序中,当catch语句中重新抛出异常时,如果没有throws子句,则不会出现错误?? 怎么做 输出是 Caught inside demoproc. Recaught : java.lang.NullPointerException: demo 对于检查的异常只需使用抛出子句遵守以下几行: public static void main(String Args[]){ try[ try有一个括号,而不是大括号。很可能,您编译程序失败,然后重新运行旧的类文件。无法获得您想

但是在下面的程序中,当catch语句中重新抛出异常时,如果没有throws子句,则不会出现错误?? 怎么做

输出是

Caught inside demoproc.
Recaught : java.lang.NullPointerException: demo

对于检查的异常

只需使用
抛出
子句遵守以下几行:

public static void main(String Args[]){
    try[

try
有一个括号,而不是大括号。很可能,您编译程序失败,然后重新运行旧的类文件。

无法获得您想要的默认处理程序。当执行选项被

throw new NullPoinerException ("demo");
它被周围的try-catch块捕获

Catch块依次抛出异常,该异常被main中的try-Catch块捕获

希望这有帮助


注释后编辑:另外,NullPoinerException异常是未检查的异常,因此不需要将其称为抛出。因为
NullPoinerException
RuntimeException
。它不需要
抛出
子句。

输出看起来就像预期的一样。你的问题是什么?@Thilo,@Luzhin:maybe-OP想说为什么它不需要在
demoproc()
方法中添加
throws
。[据我所知]我的意思是,如果一个方法本身不能处理异常,那么异常子类必须包含在throws子句中,但是第二次抛出异常时,没有catch语句可以在同一个方法中捕获它?NullPointerException是一个未经检查的异常,因此不需要在throws子句中提及。例如:您不需要在方法签名中声明RuntimeException(例如NullPointerException)(但如果需要,您仍然可以)。
throw new NullPoinerException ("demo");