黑马程序员技术交流社区

标题: 帮忙看一下这个程序。 [打印本页]

作者: 天蝎降降温    时间: 2014-10-4 00:11
标题: 帮忙看一下这个程序。


作者: 天蝎降降温    时间: 2014-10-4 00:12
为什么输出语句有问题?
作者: 天蝎降降温    时间: 2014-10-4 00:25
我在主方法里面调用了a方法,并且捕获了异常,为什么不能执行。
作者: 水竹    时间: 2014-10-4 01:35
因为那句话放在单独的throw语句后面,程序执行到throw语句之后直接就抛了异常了,后面的都不执行了。所以那句话肯定执行不到的,所以错了。编译的时候应该会提醒你语句执行不到的吧?
作者: Aaron_H    时间: 2014-10-4 04:34
  1. package com.itheima;

  2. /***
  3. * 7、 有一个类为ClassA,有一个类为ClassB,在ClassB中有一个方法b,此方法抛出异常,在ClassA类中有一个方法a,请在这个方法中调用b,
  4. * 然后抛出异常。在客户端有一个类为TestC,有一个方法为c ,请在这个方法中捕捉异常的信息。完成这个例子,请说出java中针对异常的处理机制。
  5. *
  6. * @author 侯秀凯
  7. *
  8. */
  9. public class Test7 {
  10. public static void main(String[] args) {
  11.         /***
  12.          * java中的异常是
  13.          * 谁执行,谁处理,如果不想处理,就接着声明异常,往上抛
  14.          */
  15.         new TestC().c();
  16. }
  17. }
  18. class TestC{
  19.         public void c(){
  20.                 try{
  21.                         new A().a();
  22.                 }catch(Exception e){
  23.                         System.out.println("异常被我逮住了");
  24.                         e.printStackTrace();
  25.                 }
  26.         }
  27. }
  28. class A {
  29.         public void a() throws Exception{
  30.                 new B().b();
  31.         }
  32. }
  33. class B{
  34.         public void b() throws Exception{
  35.                 throw new Exception("我是方法b中的异常");
  36.         }
  37. }
复制代码


这是我的代码,参考下吧{:2_32:}
作者: Aaron_H    时间: 2014-10-4 04:37
Aaron_H 发表于 2014-10-4 04:34
这是我的代码,参考下吧

你的代码里,抛出异常之后,程序就停止运行了,输出语句没意义了,你把输出语句放在抛出异常的上面
作者: 〆_、Wali    时间: 2014-10-4 12:39
哈哈,我也看到问题原因了,已经抛出去异常了,下边的输出语句自然是访问不到的,Eclipse里应该有提示的吧???
作者: 水竹    时间: 2014-10-5 21:52
嘿,我先回答的给说对了不给技术分,人家随便粘贴个无关代码反倒得了分,幸好我换了亲友券。




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