throws是异常的申明,它置于方法的定义处;throw是异常的掷出,它置于方法体内。 异常可分为可检测异常和非检测异常,调用申明为可检测异常的方法时必须捕获异常。
a.方法申明了可检测异常,则调用该方法的块一定要捕获异常,否则编译出错
b.throw后面不能跟任何语句,否则编译提示语句不可到达
c.多个catch语句,要求更具体的异常在前,超类异常在后,否则编译出错
d.finally语句会在return语句之前执行,即在跳出方法之前一定会执行finally语句
e.假如遇到的是System.exit(0),则无论如何,程序马上退出,finally语句不会执行
f.方法申明了异常,但是在方法体内可以不显示地用throw抛出异常
g.没有申明可检测异常的方法调用时,不可用catch捕获,否则编译出错 |
|