java为什么在try和catch中不能都抛出异常?

packageinclude;publicclassTry{publicvoidaa()throwsException{try{thrownewException();/... package include;
public class Try {
public void aa() throws Exception
{
try
{
throw new Exception(); //这里为什么异常?
}
catch(Exception e)
{
throw e;
}
}
}
请问这个程序为什么执行部下去?
异常如下:
java.lang.Exception
at include.Try.aa(Try.java:7)
at Test.test.main(test.java:13)
展开
 我来答
hanzhdy
2015-10-09 · TA获得超过116个赞
知道小有建树答主
回答量:112
采纳率:100%
帮助的人:106万
展开全部

谁说的?下面代码绝对能编译通过!

try {
    throw new IllegalArgumentException();
}
catch (Exception ex) {
    throw new RuntimeException();
}

你说的try和catch中不能抛出异常,应该是说,throw后面不能再有任何语句,如下,就不行了

try {
    throw new IllegalArgumentException();
    int a = 0; //这里就会报错,因为这一句不可能到达,所以编译器拒绝编译
}
catch (Exception ex){
]
百度网友7cd29db
2014-02-09 · TA获得超过213个赞
知道小有建树答主
回答量:186
采纳率:66%
帮助的人:77.5万
展开全部
new Exception(); 就是你自己构造了一个异常,

然后你在代码中抛出了
exception 类型的异常,java要求异常要显示处理,就是一定要处理的意思
你这个代码是一个异常示例吧?教你怎么使用和捕获异常
建议你看看这个代码出处的教材内容,先把异常神马弄清楚
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-02-09
展开全部
这就是正常的啊

因为自己抛出异常的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yanhaixu1314
2014-02-09 · TA获得超过398个赞
知道小有建树答主
回答量:191
采纳率:0%
帮助的人:142万
展开全部
你虽然有try来捕获异常,catch本应该是处理异常的,但是你却又把异常抛出去了,所以相当于你根本没有try catch
追问
3Q,谢谢!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式