checked exception 与 runtime exception

Java存在三种可抛出结构(throwable):受检异常(checked exception)、运行时异常(runtime exception)和错误(error)。使用原则是:

1、如果期望调用者能够恢复,则应该使用受检异常。抛出受检异常,可以强迫调用者在一个catch子句中处理该异常,或者继续向外传播。

2、运行时异常是指难以恢复或者不可恢复的程序错误。大多数运行时异常都是表明前提违例(precondition violation指API的调用方没有遵循调用约定)。

3、错误(error)被JVM保留用于指示资源不足、约束失败或者其他程序无法继续执行的情况。最好不要实现新的Error子类,所有抛出的未受检异常都应该是RuntimeException的子类。

运行时异常 可以依靠程序员编程的规范性来避免。 

应用场景: 如果想终止程序 则抛出运行时异常  如果对异常想进行处理  则抛出检查异常。

 

posted @ 2014-07-30 21:20  众木成林  阅读(1524)  评论(1编辑  收藏  举报