Ich schreibe Demo-Code für eine API, die wir erstellt haben, und ich stoße immer wieder auf das gleiche Problem, wo ich mich immer und immer wieder wiederhole. Ich bin mir schmerzlich bewusst, dass Java Schließungen hinzugefügt werden soll, aber ich habe jetzt keinen Zugriff darauf. Hier ist, was alle über den Ort wiederholt, dass Ich mag würde nur in seine eigene kleine Ecke Box:Funktionen in Java zusammensetzen?
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;
}
}
über die einzige Art, wie ich gedacht habe, um diesen zu gehen, ist durch ein Method
in eine Funktion übergeben das birgt die try-catch-Logik und sie alle auf in einer anderen Funktion Einwickeln in etwa so:
public BarObj MyFunc(Double..._input){
return compose("MyLogic",_input);
}
private BarObj MyLogic(Double..._input)
throws Exception{
//stuff
}
aber es sieht hässlich aus und trägt mit ihm eine Menge vorformulierten. Gibt es eine einfachere Möglichkeit, Funktionen in Java zu erstellen?
ich einige der vorgeschlagenen denken Erweiterungen für Verschlüsse in Java sehen noch hässlicher aus. – DerMike