Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我应该使用什么异常处理?_Java_Exception_Exception Handling - Fatal编程技术网

Java 我应该使用什么异常处理?

Java 我应该使用什么异常处理?,java,exception,exception-handling,Java,Exception,Exception Handling,我有一个在VO中设置一些属性的方法。该方法如下所示: public void methodToPopulateVO(MyVO vo) { BackendClass bClass = new BackendClass(); vo.setA(bClass.getA()); //Line 1 vo.setB(bClass.getB()); //Line 2 vo.setC(bClass.getC()); //Line 3 } 这些方法中的任何一种都可以引发异常。我的要

我有一个在VO中设置一些属性的方法。该方法如下所示:

public void methodToPopulateVO(MyVO vo)
{
    BackendClass bClass = new BackendClass();
    vo.setA(bClass.getA()); //Line 1
    vo.setB(bClass.getB()); //Line 2
    vo.setC(bClass.getC()); //Line 3
}
这些方法中的任何一种都可以引发异常。我的要求是,如果
getA()
在第2行和第3行抛出一些异常代码,则仍应执行该代码。这适用于每一行(例如,如果第2行导致异常,第3行仍应执行)。我无法更改
后端类
的实现。由于性能是应用程序的衡量因素,我应该实现哪种对性能影响较小的异常处理技术

请注意,实际系统大约有20个字段,而不仅仅是3个。

这里有一种方法:

public void methodToPopulateVO(MyVO vo){
    BackendClass bClass = new BackendClass();
    try {
        vo.setA(bClass.getA()); //Line 1
    } catch (Exception e) {
        log(e);
    }
    // same for the next 2 method calls.
}
现在,当
getA()
抛出异常时,您将记录事件并继续执行。

这里有一种方法:

public void methodToPopulateVO(MyVO vo){
    BackendClass bClass = new BackendClass();
    try {
        vo.setA(bClass.getA()); //Line 1
    } catch (Exception e) {
        log(e);
    }
    // same for the next 2 method calls.
}

现在,当
getA()
抛出异常时,您将记录事件并继续执行。

是的,您应该使用异常处理,因为任何异常都可能抛出您的方法,即

setA(bClass.getA()); 
setB(bClass.getB()); 
setC(bClass.getC());

您应该在try和catch中编写,并使用适当的异常类来处理它,或者在catch中使用异常类

是的,您应该使用异常处理,因为任何异常都可能抛出您的方法,即

setA(bClass.getA()); 
setB(bClass.getB()); 
setC(bClass.getC());

您应该在try和catch中编写,并使用适当的异常类来处理它,或者在catch中使用异常类

你认为选项是什么?既然你必须捕获异常,那么每个解决方案(显式捕获,最后,就是它)都将几乎相同。你认为选项是什么?既然你必须捕获异常,那么每个解决方案(显式捕获,最后,就是它)都将几乎相同。