Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.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 - Fatal编程技术网

Java 两个例外之间的区别

Java 两个例外之间的区别,java,Java,我的任务是预测程序的输出而不打印它 在此程序中,person没有覆盖toString()方法和输出变量 Exception in thread "main" java.lang.MethodNotFoundException 第二个是 cannot resolve symbol symbol: method toString () 这两种方法的区别是什么?前者是运行时异常,第二种是编译错误,它首先不允许代码运行。如果在不重写的情况下运行toString方法,则这两种情况都不应

我的任务是预测程序的输出而不打印它

在此程序中,person没有覆盖toString()方法和输出变量

 Exception in thread "main" 
 java.lang.MethodNotFoundException 
第二个是

 cannot resolve symbol 
 symbol: method toString () 

这两种方法的区别是什么?

前者是运行时异常,第二种是编译错误,它首先不允许代码运行。如果在不重写的情况下运行toString方法,则这两种情况都不应该出现,除非定义一个显式类层次结构,其中一个类引发前一个异常,然后它的一个子类无法重写它。

第一次出现在运行时,在运行时动态测试方法存在性,但它不存在


第二个异常是在编译时发生的,因为方法不存在。

第二个异常是已检查的异常,可以在应用程序中捕获并处理,如果您没有捕获第二种类型的异常,编译器将在编译期间抛出错误


而第一个异常是未检查的异常。编译过程中编译器无法检测到它,您无法捕获它。最好称之为魔鬼例外:)

请向我们展示您的代码。一个技巧,这两个都不会发生,toString()是为所有java对象定义的。如果这是一个家庭作业问题,请使用家庭作业标记谢谢大家的回答!=)