黑马程序员技术交流社区

标题: 请帮忙解答疑惑 [打印本页]

作者: 完美恋爱    时间: 2013-12-6 08:44
标题: 请帮忙解答疑惑
本帖最后由 完美恋爱 于 2013-12-6 09:05 编辑

class Demo
{        
        public static void aaa()
        {
                try
                {
                        throw  new Exception();
                }
                catch(Exception e)
                {
                        System.out.println("A");
                }
        }
        public static void main(String[] args)
        {
                try
                {
                        aaa();
                }
                finally
                {
                        System.out.println("B");
                }
        }
}
aaa()方法里既然有throw了,为什么不在aaa()方法上声明呢?这样不能编译失败吗?


作者: 王新年    时间: 2013-12-6 08:54
如果是在方法上声明throw,则将异常抛给调用它的方法,它自己就不能捕获处理!调用者必须处理该异常,如果调用者不处理就会给上一层带来不必要的麻烦!




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