JAVA Exception和RuntimeException的区别和用法、用处
记得以前刚学JAVA时候,不知道Exception和RuntimeException怎么用,直至今天在项目中遇到问题,才豁然开朗。故写下心得体会,当然也未必完全正确,仅仅个人理解。
①Exception, 非运行时异常,在项目运行之前必须处理掉。一般由程序员try catch 掉。
②RuntimeException,运行时异常,在项目运行之后出错则直接中止运行,异常由JVM虚拟机处理。
在项目中,如果不希望程序因为小小的异常而被挂掉,那么请使用Exception捕获。
当然,如果您让它继续运行或者不希望返回给用户一堆他们看不懂的英文,您也可以设置Exception的Message并继续往外 抛,然后统一在入口处友好解决,并以友好的方式反馈给用户。
如果某段代码块非常重要,一旦异常则可能会影响后面代码。或者说绝对不容忍(允许)该代码块出错,那么我们就用 RuntimeException。当然这也不是绝对的,就算系统出现错误。我们也不可能就这么挂掉而不给用户任何反馈吧,至少告诉 用户,“网络繁忙!”、“系统异常,请联系管理员”之类的提示。
所以:我们还得具体问题,具体分析。只要弄清楚以上①②两点,再结合具体问题来分析问题解决问题。这才是硬道理。