java.lang.RuntimeException 和 java.lang.Exception 之间的区别
有人请解释一下 和 之间的区别 ?如果我创建自己的例外,如何决定要扩展哪一个?java.lang.RuntimeException
java.lang.Exception
有人请解释一下 和 之间的区别 ?如果我创建自己的例外,如何决定要扩展哪一个?java.lang.RuntimeException
java.lang.Exception
通常,运行时异常是可以通过编程方式阻止的异常。例如, .如果在调用任何方法之前检查,则永远不会发生。同样,如果您先检查索引,则永远不会发生。 编译器未检查,因此它是干净的代码。NullPointerException
ArrayIndexOutOfBoundException
null
NullPointerException
ArrayIndexOutOfBoundException
RuntimeException
编辑:这些天人们青睐,因为它产生的干净代码。这完全是个人选择。RuntimeException
在 Java 中,有两种类型的异常:已检查的异常和未选中的异常。已检查的异常必须由代码显式处理,而未检查的异常不需要显式处理。
对于已检查的异常,必须在可能引发异常的代码周围放置一个 try/catch 块,或者向该方法添加一个 “throws” 子句,以指示该方法可能会引发此类型的异常(必须在调用类或更高版本中处理)。
从“异常”派生的任何异常都是已检查的异常,而从 RuntimeException 派生的类是未选中的。运行时异常不需要由调用代码显式处理。