求教个JAVA的题目

这题为什么选B,求详细说明,谢谢... 这题为什么选B,求详细说明,谢谢 展开
 我来答
Jase静
2014-11-02 · TA获得超过262个赞
知道小有建树答主
回答量:178
采纳率:0%
帮助的人:137万
展开全部
这里要理解throw与throws的区别(throws时,调用该方法时需要try catch)
给我的感觉是说,类B的method2抛出TestException时,以下对的是;
A:33行将的调用的A的method1,33行会抛出异常,但是不需要try catch 处理,因为他自己处理了异常(throw)。
B:同上,他是自己处理了异常,没有抛出去,所以不需要捕获异常(throw)。
C:同上。
D:B中的method2 采用是throws抛出去,所以调用method2的方法都需要try catch(throws)。
所以答案为B。主要考的throw与throws的区别,楼主可以选择去写个示例类,与试下。
希望能帮到你。
百度网友0adf2dfc62
2014-11-02 · TA获得超过578个赞
知道小有建树答主
回答量:553
采纳率:50%
帮助的人:213万
展开全部
首先记住,运行时异常在编码阶段不必须非得处理,而非运行时异常必须在编码阶段进行处理,所谓的异常处理有两种方式,要么自己处理,也就是try/catch,要么继续向外抛,由外层调用者自行处理。
逐个分析每个选项。
A:a.method1抛出的是RuntimeException,所以不是必须处理的
B:同A
C:同选项A中的原因
D:由于TestException继承自Exception,是非运行时异常,所以如果你调用了B.method2()就得放在一个try/catch里
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tob111
2014-11-02 · 超过48用户采纳过TA的回答
知道小有建树答主
回答量:80
采纳率:100%
帮助的人:66.9万
展开全部
A 33行”必须“放在 try{}cathch(){}里 这个明显错的,method1已经已经把可能有的testexception捕获了,运行时异常不是必须要捕获的
B method1 抛的是运行时异常,不是必须要捕获的
C 同 A 捕获异常两种方法,一种放在try catch里 一种throw exception 抛出去,而运行时异常不是必须处理的
D method2里抛出的异常testexception 继承自 exception 所以是必须要捕获的,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式