A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 赵喜平 中级黑马   /  2013-3-29 20:38  /  1431 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class Test
{
        public static void main(String[] args)
        {
                try
                {
                    func();
                    System.out.println("A");//此处的A为什么没有打印呢
                }
                catch(Exception e)
                {
                    System.out.println("C");
                }
                System.out.println("D");
        }
        public static void func() throws Exception
        {
               try
               {
                   throw new Exception();
               }
               finally
               {
                   System.out.println("B");
               }
        }
}


评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1

查看全部评分

5 个回复

倒序浏览
  try
                {
                    func();
                    System.out.println("A");//此处的A为什么没有打印呢
                }
因为func()这个方法报了异常,对异常进行捕捉处理,后面的语句就不执行了呀
异常的出现就是对有问题的代码进行处理,这个c方法除了异常,因而后面的语句就不执行了
记住:异常代码后面的语句不会被执行

评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1

查看全部评分

回复 使用道具 举报
尽量及时处理帖子,追问 或 结贴~
回复 使用道具 举报
因为主函数在运行到func()方法时,抛出了异常,系统就会把该异常对象当做参数传递给catch,然后由执行catch代码块中的代码。

评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1 新人加油

查看全部评分

回复 使用道具 举报
陈丽莉 发表于 2013-3-29 21:04
尽量及时处理帖子,追问 或 结贴~

版主,这要怎么修改帖子呀:)
回复 使用道具 举报
1170531562 发表于 2013-3-29 22:22
版主,这要怎么修改帖子呀

点进自己的帖子,编辑,然后左上角标题旁边,可以修改分类的~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马