黑马程序员技术交流社区

标题: try块中是可以抛出异常? [打印本页]

作者: 刘松老师    时间: 2013-3-8 20:57
标题: try块中是可以抛出异常?
异常中try块中是可以抛出异常吗?具体是怎么抛出的?
作者: scott0610    时间: 2013-3-8 21:05
本帖最后由 袁见 于 2013-3-8 21:07 编辑

Java通过面向对象的方法进行异常处理,把各种不同的异常进行分类,并提供了良好的接口。在Java中,每个异常都是一个对象,它是Throwable类或其它子类的实例。当一个方法出现异常后便抛出一个异常对象,该对象中包含有异常信息,调用这个对象的方法可以捕获到这个异常并进行处理。
一般情况下是用try来执行一段程序,如果出现异常,系统会抛出(throws)一个异常,这时候你可以通过它的类型来捕捉(catch)它,或最后(finally)由缺省处理器来处理。
用try来指定一块预防所有"异常"的程序。紧跟在try程序后面,应包含一个catch子句来指定你想要捕捉的"异常"的类型。
throw语句用来明确地抛出一个"异常"。
throws用来标明一个成员函数可能抛出的各种"异常"。
Finally为确保一段代码不管发生什么"异常"都被执行一段代码。
可以在一个成员函数调用的外面写一个try语句,在这个成员函数内部写另一个try语句保护其他代码。
每当遇到一个try语句,"异常"的框架就放到堆栈上面,直到所有的try语句都完成。如果下一级的try语句没有对某种"异常"进行处理,堆栈就会展开,直到遇到有处理这种"异常"的try语句

作者: 刘勇强    时间: 2013-3-8 21:48
本帖最后由 刘勇强 于 2013-3-8 21:50 编辑

可以
  1. class Demo
  2. {
  3.   public void method()
  4. {
  5.   try{throw new Exception();}
  6.   catch(Exception e){}//处理异常,如果没有用catch处理便需要标示出去 让调用者处理
  7. }
  8. }



复制代码

作者: 张卫刚    时间: 2013-3-8 22:15
可以,但要声明,如果不是运算相关异常就不用写声明
try{
    throw new Exception();
}
  catch(Exception e){}
作者: 梅杰明    时间: 2013-3-9 00:50
throw语句抛出异常对象即可,不用特别在方法上声明吧




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