运行时异常表示契约被破坏(如NPE),如果代码没有错误,就不应该抛出异常。它总是指示代码中的错误(与断言相同,但是断言是针对内部类错误的,而运行时是针对类的客户端错误的)。
运行时异常永远不应该被捕获。
另一方面,检查的异常是签名的一部分,应该被捕获和处理。它们可能表示用户输入错误或外部资源故障(如IOException
)。
所有这些我都不明白为什么NumberFormatException
是运行时?
https://stackoverflow.com/questions/7205624
复制相似问题