我正在为我们创建的API编写演示代码,并且我一直在遇到同样的问题,在那里我重复自己,一遍又一遍的广告恶心。我很痛苦地意识到Java计划添加闭包,但我现在无法访问它们。这里是重复遍,我想只是框到它自己的小角落的地方:在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;
}
}
关于我想到了去解决这个问题的唯一方法是通过传递Method
成一个函数与它承载在try-catch逻辑,像这样包装这一切在其他功能:
public BarObj MyFunc(Double..._input){
return compose("MyLogic",_input);
}
private BarObj MyLogic(Double..._input)
throws Exception{
//stuff
}
,但它看起来丑陋,它承载了太多的样板。有没有更简单的方法来编写Java中的函数?
我觉得有些提议Java中的闭包扩展看起来更丑陋。 – DerMike 2010-02-05 17:09:11