Java JVM如何处理运行时异常
在创建自定义异常时,如果要创建选中的异常,我们将扩展异常类,对于未选中的异常,我们将扩展RuntimeException类。Java JVM如何处理运行时异常,java,exception-handling,jvm,checked-exceptions,unchecked-exception,Java,Exception Handling,Jvm,Checked Exceptions,Unchecked Exception,在创建自定义异常时,如果要创建选中的异常,我们将扩展异常类,对于未选中的异常,我们将扩展RuntimeException类。 我的问题是,当RuntimeException和Exception的子类都是Exception类的子类时,JVM如何以不同的方式处理它们。唯一的区别在于编译器强制执行的需求 您错误地认为JVM以不同的方式处理异常,但是如果您询问编译器如何以不同的方式处理异常,那么您的问题仍然有效 这有一个简单的答案:规则并没有说明Exception的所有子类都是检查异常。那些也是Runt
我的问题是,当RuntimeException和Exception的子类都是Exception类的子类时,JVM如何以不同的方式处理它们。唯一的区别在于编译器强制执行的需求 您错误地认为JVM以不同的方式处理异常,但是如果您询问编译器如何以不同的方式处理异常,那么您的问题仍然有效
这有一个简单的答案:规则并没有说明
Exception
的所有子类都是检查异常。那些也是RuntimeException
的子类的也将被取消选中。谢谢你的回复,威廉,实际上这是我关心的问题。编译器仍然以不同的方式处理作为instanceof type Exception的两个子类。此外,你说“规则并没有规定所有的异常子类都是被检查的异常”,但是为什么每个异常子类都是被检查的(仅限)我不理解你的问题:exception
的每一个子类,它不是RuntimeException
的子类,都被视为检查异常,这就是定义。你说的“为什么”是什么意思?