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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 史政法 中级黑马   /  2013-3-28 12:34  /  1293 人查看  /  13 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 史政法 于 2013-3-28 21:28 编辑
  1. class  Demo
  2. {
  3.         public static void sop(Object obj)
  4.         {
  5.                 System.out.println(obj);
  6.         }


  7.         public static void main(String[] args)
  8.         {
  9.                 ExceptionDemo ed = new ExceptionDemo();
  10.                 try
  11.                 {
  12.                         sop(ed.div(4,-2));
  13.                 }
  14.                 catch (Exception e)
  15.                 {
  16.                         e.toString();
  17.                 }
  18.                         

  19.         }
  20. }


  21. class FuShuException extends RuntimeException
  22. {
  23.         FuShuException(String message)
  24.         {
  25.                 super(message);
  26.         }

  27. }

  28. class ExceptionDemo
  29. {
  30.         public int div(int a ,int b ) throws Exception
  31.         {
  32.                 if (b<0)
  33.                         throw new FuShuException("除数出现了负数");
  34.                 if(b==0)
  35.                         throw new Exception("除数为0");
  36.                 return a/b;
  37.         }
  38. }
  39. 为什么没有结果?
复制代码

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

13 个回复

正序浏览

RE: 为什么没有结果?

曹春贵 发表于 2013-3-28 22:25
没进呢,正在学习,学习到第10天了,只不过以前接触过java但是很浅,这是系统学习。我白天有事,学习慢着 ...

加油,相信自己,结果不重要,我们已经体验过过程了!哈哈
回复 使用道具 举报
史政法 发表于 2013-3-28 21:27
我是瞎子。。。。。。这种问题,,,,,,

哥们进黑马了吗?或者看到哪个地方了?

没进呢,正在学习,学习到第10天了,只不过以前接触过java但是很浅,这是系统学习。我白天有事,学习慢着呢,每天就学习3-4个小片段,然后总结下,共计2小时。慢慢看和总结,我时间不是很急,你也不要太急,欲速则不达,每天理解总结多少是多少
回复 使用道具 举报
本帖最后由 逸盏清茶 于 2013-3-28 22:03 编辑

加一个catch()语句

try

{

sop(ed.div(4,-2));

}
catch(FuShuException f)
{
      sop(f.toString());
}

catch (Exception e)

{

e.toString();

}
回复 使用道具 举报
史政法 发表于 2013-3-28 21:28
同问,,,,哥们进黑马了吗?或者看到哪个地方了?

唉,悲剧的大三,一堆原理课(软件工程,编译原理......)把我搞的凌乱,,,,
我在抽时间看,再看集合类(day14)
我看的不太快..你不用太着急,欲速则不达,基础是关键
建议你多写总结,不然最后忘的差不多了.
回复 使用道具 举报
张洪慊 发表于 2013-3-28 13:06
catch (Exception e)
                {
                       System.out.pr ...

同问,,,,哥们进黑马了吗?或者看到哪个地方了?
回复 使用道具 举报
曹春贵 发表于 2013-3-28 12:54
读程序执行到这里了,这个信息要打印输出才出来,继承父类貌似是传递过去,那没有打印 ...

我是瞎子。。。。。。这种问题,,,,,,

哥们进黑马了吗?或者看到哪个地方了?
回复 使用道具 举报
本帖最后由 张洪慊 于 2013-3-28 13:11 编辑

  catch (Exception e)
                {
                       System.out.println(e.toString());//返回的是String,需要输出
                           //或用printStackTrace()
                        //e.printStackTrace();
                }
回复 使用道具 举报
  1. class FuShuException extends RuntimeException
  2. {
  3.         FuShuException(String message)
  4.         {
  5.                 super(message);
  6.                 System.out.println(message);//这里要将信息打印出来
  7.         }

  8. }
复制代码
读程序执行到这里了,这个信息要打印输出才出来,继承父类貌似是传递过去,那没有打印
回复 使用道具 举报
张洪慊 发表于 2013-3-28 12:43

额,代码复制到,貌似这个头像回答了我N多问题了。。。。。。?
回复 使用道具 举报
曹春贵 发表于 2013-3-28 12:40
传递过去的数组只有一个,第二个元素和第三个没有赋值所以循环时读取为null ...

啊!哥们,你好快,重新编辑帖子后才发现不是x++的事情啊,,,,恩,这代码是复制的,忘记改了,再帮忙看看上面的代码,为啥没有结果?
回复 使用道具 举报
  1. class TC
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 Circle cir[] = new Circle[3];
  6.                 cir[0] = new Circle(1.0);
  7.                 cir[0] = new Circle(2.0);
  8.                 cir[0] = new Circle(4.0);
  9.                /*
  10.                       对cir[0]进行3次赋值?
  11.                     cir[1] = new Circle(2.0);
  12.                     cir[2] = new Circle(4.0);
  13.                     太粗心了吧
  14.                   
  15.                   报错原因就是,cir[1]和cir[2]依然为null
  16.                */
  17.                 System.out.println("最大的半径值是:"+Circle.compare(cir));
  18.         }
  19. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
张熙韬 + 1

查看全部评分

回复 使用道具 举报
  1.         public static void main(String[] args)
  2.         {
  3.                 Circle cir[] = new Circle[3];
  4.                 cir[0] = new Circle(1.0);//这是0
  5.                 cir[0] = new Circle(2.0);//这应该是cir[1]了吧
  6.                 cir[0] = new Circle(4.0);//这也是
  7.                 System.out.println("最大的半径值是:"+Circle.compare(cir));
  8.         }
复制代码
传递过去的数组只有一个,第二个元素和第三个没有赋值所以循环时读取为null

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
明白了,,,,最后x又++了一次,,,,蛋疼。。。

那我就编辑一下帖子换个问题吧。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马