我正在为我们创建的 API 编写演示代码,但我一直遇到同样的问题,我一遍又一遍地重复自己,令人作呕。我痛苦地意识到 Java 计划添加闭包,但我现在无法访问它们。以下是在所有地方重复的内容,我只想把它装进它自己的小角落:
public BarObj Foo(Double..._input){
try{
//things that vary per function
//but everything else...
} catch(NullException _null){
m_Logger.error("Null error exception caught in Blah::Foo");
return null;
} catch(Exception ex){
m_Logger.error( ex.getMessage() );
return null;
}
}
关于我认为解决此问题的唯一方法是将 a 传递给Method
一个带有 try-catch 逻辑的函数,并将其全部包装在另一个函数中,如下所示:
public BarObj MyFunc(Double..._input){
return compose("MyLogic",_input);
}
private BarObj MyLogic(Double..._input)
throws Exception{
//stuff
}
但它看起来很丑,并且带有很多样板。有没有更简单的方法在 Java 中编写函数?