黑马程序员技术交流社区

标题: 如何捕获已经被catch的异常呢? [打印本页]

作者: 姜佳文    时间: 2014-8-7 23:28
标题: 如何捕获已经被catch的异常呢?
比如 A 类的一个sum函数里有异常发生,但是被catch了。
我在B类里要调用A类的这个函数,希望在发生异常的时候,能够捕获到sum函数里的异常

// A的文件不能发生任何的更改  
public class A {
    public A(){
        
        public String sum(){
            try{
                xxxxxx
            }catch (Exception e){
              //其实这是个 StackOverflowError 异常,我想在B类里获取
                e.printStackTrace();
            }
        }
    }

}

//在B里调用A文件的sum方法
public class B {
    public B(){

        try{
            A a = new A();
            a.sum();
        }catch (Exception e){
            e.printStackTrace();
            //希望在此获得A里发生的异常,不论什么方法,只能有获得到A里的sum异常message就行
        }
    }
}
作者: 姜佳文    时间: 2014-8-7 23:30
请问怎么捕获这个异常?还是说不可能捕获到这个异常?谢谢
A类的文件,无法或者说不允许被更改。
需要更改A文件的方法,就算了,请提供在不修改A类文件的基础上的方法,谢谢。
作者: ysdolls    时间: 2014-8-7 23:57
c extends a 重写方法 在a类中catch块 抛出异常给b接受
不然就没法弄,a类已经处理异常了就没法接收了
作者: meibinlove    时间: 2014-8-8 00:21
不处理,直接抛出




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