黑马程序员技术交流社区

标题: 关于throw和throws的区别 [打印本页]

作者: ulddfhv    时间: 2015-4-18 00:23
标题: 关于throw和throws的区别
Throws的方式处理异常
总结:关于java中异常处理方式
1.        try…catch
2.        throws
throws处理的格式:
        我们在方法后面直接写  throws  异常类
        这就代表要将这个异常抛出。

使用throws抛出异常,抛给谁了?
        谁在调用这个方法就抛给谁

throw的概述以及和throws的区别
问题:throw是什么?
        它是用于抛出具体异常的,注意,它抛出的是异常对象。

对于throw,如果执行了,方法体也就结束 了。
在开发中经常会使用throw让我们的方法结束。

:throw与throws区别:
1.        throws是定义在方法的声明 上的,而throw,是在方法体中使用的
2.        throws后面是一个方法类名,throw后是一个对象。
3.        throws它只是用于声明这个方法可能抛出某种类型异常,throw它是真正用于抛出一个异常。

开发中如何处理异常
问题:就是选择try…catch还是throws?
可以处理的,你就try…catch,不能处理的throws。

如果问题可以处理,我们将问题处理掉?“处理“
在实际开发中,如果出现了异常,经常 是给用户一个友好的提示界面,来描述问题。

作者: lzh2015    时间: 2015-4-18 00:33
如果在函数名后有说明问题抛出,则在调用语句中需要捕捉抛出问题,要是在函数中抛出问题用throw Runtime...的可以不需要捕捉,也就是说,函数名后抛出问题等于告诉你面包有问题了你要处理,函数中抛出问题就是没告诉你面包坏了(就是封装思想),你都不知道坏了,自然不懂捕捉对象。
作者: ulddfhv    时间: 2015-4-18 00:45
throw语句用在方法体内,表示抛出异常,由方法体内的语句处理  ,这异常可能是人为的,也可能是系统抛出的,只要执行了throw就一定会抛出一个异常。
         throws只能出现在方法函数头,表示再抛出异常,由调用这个方法的上一级方法中的语句来处理,throws表示出现异常的一种可能性,并不一定会发生这些异常.




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2