mon*_*dev 9 java methods try-catch short
有一个用于捕获异常的短方法的类是否很好?
class ContractUtils{
public static String getCode(Contract contract) throws MyException{
try{
return contract.getInfo().getCode(); //throws ContractException and LogicException
}catch(Exception e){
throw new MyException("error during code reading:"+e.getMessage, e);
}
}
//other methods like above...
}
Run Code Online (Sandbox Code Playgroud)
您的实用程序类ContractUtil引入了一定程度的间接性,只是为了将原始异常转换为另一个异常:
而不是直接调用:
return contract.getInfo().getCode()
Run Code Online (Sandbox Code Playgroud)
你现在正在写更人工的
return ContractUtils.getCode(contract);
Run Code Online (Sandbox Code Playgroud)
但在某些情况下,该解决方案可能是合理的,例如:
不允许抛出 ContractException 或 LogicException,并且多次调用此方法。
但如果您可以更改其签名,最好将原始方法重新设计为仅抛出MyException。
| 归档时间: |
|
| 查看次数: |
120 次 |
| 最近记录: |