Tôi đang viết mã demo cho API mà chúng tôi đã tạo và tôi tiếp tục chạy vào cùng một vấn đề mà tôi lặp lại bản thân mình, hơn và hơn nauseum quảng cáo. Tôi đau đớn nhận thức được rằng Java được lên kế hoạch để có đóng cửa được thêm vào nhưng tôi không có quyền truy cập vào chúng ngay bây giờ. Đây là những gì được lặp lại trên tất cả các nơi mà tôi muốn chỉ hộp vào đó là cái góc nhỏ riêng:Chức năng soạn thảo trong 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;
}
}
Về cách duy nhất tôi đã suy nghĩ để đi xung quanh này là bằng cách đi qua một Method
vào một chức năng mà mang theo nó logic cố gắng nắm bắt và gói tất cả lên trong một chức năng như vậy:
public BarObj MyFunc(Double..._input){
return compose("MyLogic",_input);
}
private BarObj MyLogic(Double..._input)
throws Exception{
//stuff
}
nhưng nó trông xấu xí và mang theo nó rất nhiều boilerplate. Có cách nào dễ dàng hơn để soạn các hàm trong Java?
Tôi nghĩ rằng một số các đề xuất phần mở rộng cho đóng cửa trong java trông thậm chí xấu hơn. – DerMike