黑马程序员技术交流社区
标题:
关于异常问题
[打印本页]
作者:
Rancho_Gump
时间:
2012-12-9 17:47
标题:
关于异常问题
本帖最后由 张向辉 于 2012-12-14 15:10 编辑
对于异常处理,我有点模糊,请助!
毕老师说遇到异常可以进行try处理,或者throw。那么什么情况下进行throw好呢,什么情况下必须做try处理啊?
作者:
但汉涛
时间:
2012-12-9 17:51
一般情况下是用try来执行一段程序,如果出现异常,系统会抛出(throws)一个异常,这时候你可以通过它的类型来捕捉(catch)它,或最后(finally)由缺省处理器来处理。
用try来指定一块预防所有"异常"的程序。紧跟在try程序后面,应包含一个catch子句来指定你想要捕捉的"异常"的类型。
throw语句用来明确地抛出一个"异常"。
throws用来标明一个成员函数可能抛出的各种"异常"。
Finally为确保一段代码不管发生什么"异常"都被执行一段代码。
可以在一个成员函数调用的外面写一个try语句,在这个成员函数内部写另一个try语句保护其他代码。每当遇到一个try语句,"异常"的框架就放到堆栈上面,直到所有的try语句都完成。如果下一级的try语句没有对某种"异常"进行处理,堆栈就会展开,直到遇到有处理这种"异常"的try语句。
作者:
李桐
时间:
2012-12-9 18:26
throws就是把问题扔给上一级,或者说上学有不会的问题就问比你学的好的,如果学的好的也不会就问老师去了,,,反正到最后总是要用try语句解决的
try则是自己解决问题,一次解决就轻松了,调用这个方法的也就不用再try了...
作者:
王舒玮
时间:
2012-12-9 18:27
public class Test{
public static void main(String[] args){
boolean bool = true;
try{
System.out.println("1");
if(bool){
throw new Exception;
Integer.parselnt("100");//证明try块出现异常,立即终止块
}
System.out.println("2");
}catch(Exception e){
System.out.println("已经处理完");
}
System.out.println("3");
}
}
在try中抛出异常,有对应的catch捕获。
把抛出的异常的语句放到try中,try是监控区,用来监控这些语句。在监控区中出现异常,不会使用方法返回。这时会在catch中查找哪一个catch能够处理这个异常,找到这个catch,然后交给它,让它处理,catch捕获处理异常的块,catch块结束后,程序向下正常执行。
}
public static String fun()throws Exception{}
//throw手动抛出异常
public static void main(String[] args)throws Exception{//throws声明异常
Exception e = new Exception;
throw e;//抛出异常
作者:
汪磊
时间:
2012-12-9 23:16
你觉得有可能出问题的地方用try catch,
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2