例如:如何用相同的重複代碼塊來包圍不同的代碼塊?同時能夠返回不同的值
public Object foo(string something, Boolean flag, Object obj){
try{
if(flag){
//some code
}
} catch(Exception e) {
// handle exception
}
}
public Object doo(string something, Boolean flag){
try{
if(flag){
//different code
}
} catch(Exception e) {
// handle exception
}
}
public Object roo(string something, Boolean flag, Integer id){
try{
if(flag){
//a bit of code
}
} catch(Exception e) {
// handle exception
}
}
我的問題是,有沒有辦法不具有在每個功能(例如在try-catch塊和IFS)的所有重複的代碼?這真的會清理我的項目,並會幫助我專注於重要的代碼。
我問過關於void函數的這個問題,並注意到所提出的解決方案(使用runnable)對返回類型不爲null的函數不起作用。有沒有不同的方式來實現這一點?
鏈接到我以前的(非常相關的)問題:How do I surround different blocks of code with the same repeating block of code?