为了账号安全,请及时绑定邮箱和手机立即绑定

为什么test2()不需要 throws ?

	public void test2()  //throws RuntimeException	为什么这个地方不需要 throws ?
	{		
	    try {			
	            test1();		
	     } catch (DrunkException e) {			
	                 System.out.println("test2 try catch(DrunkException)");						
	                 RuntimeException newExc = 	new RuntimeException(e);
	                 //			newExc.initCause(e);			
	                 throw newExc;		
	 }


正在回答

4 回答

运行时异常可以自由选择是否catch,所以不必声明

0 回复 有任何疑惑可以回复我~

因为这是个运行时异常,不需要throws

1 回复 有任何疑惑可以回复我~

可以理解成 throws是把异常抛出给上一级去处理

try catch就是直接捕获异常自己处理掉了,所以不用再抛出

0 回复 有任何疑惑可以回复我~

已经使用try{}catch{}块儿了就不用再使用throws抛出异常了

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么test2()不需要 throws ?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信