如果异常没有被抛弃,有没有办法通过框架获得异常?

时间:2013-05-23 09:43:45

标签: java exception try-catch

如果发生异常,它会被catch块捕获,但不会被抛弃。框架是否有办法知道存在异常?

背景(原因):我们必须重新制作以前的项目并添加异常处理。但是,许多例外都没有被抛弃。

非常感谢!

//for example
private void handle() {
    try{
        int i = 5/0;
    }catch(Throwable e){
        ;//here the e is not throwed
    }
}

1 个答案:

答案 0 :(得分:1)

这可能是可以实现的,但并非没有黑客攻击。例如,您可以使用AspectJ为Throwable构造函数提供代码,该代码将注册异常实例化事件。这与实际投掷它们不同,但这是一个很好的近似。关键优势在于,通过这种方法,您只有一个地方可以进行干预。

请注意,使用此方法肯定会产生很多噪音,因为异常会在许多地方合法地抛出并在本地捕获,包括JDK本身。