我有一种方法可以在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()
,getB()
,getC()
都可以抛出异常。我的要求是如果getA()
在第2行抛出一些异常静止代码而第3行应该执行。这适用于每一行(例如,如果第2行导致异常,第3行仍应执行)。我无法改变BackendClass
的实施。我应该实现哪种异常处理技术会降低性能影响,因为性能是我们应用程序的衡量因素?
请注意,真实系统有大约20个字段,而不仅仅是3个字段。
答案 0 :(得分:5)
这是一种方式:
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()
抛出异常时,您会记录该事件并继续执行。
答案 1 :(得分:0)
是的,您应该使用异常处理,因为任何异常都可能抛出您的方法,即
setA(bClass.getA());
setB(bClass.getB());
setC(bClass.getC());
你应该在try和catch中编写并使用适当的异常类来处理它或在catch中使用Exception类....