假设我调用了一个方法。我想要该方法的返回值。但是,此方法将任务委托给其他方法,而这些方法又可以将任务委托给其他方法。最顶层方法最终返回的值最终由子方法和子方法的子方法决定。
想象一下这个场景:
public String method1(Object o){
if(x)
return subMethod1(o);
if(y)
return subMethod2(o);
if(z)
return subMethod3(o);
else
return "";
}
//示例子方法
public String subMethod1(Object o){
if(a)
return subSubMethod1(o);
if(b)
return subSubMethod2(o);
if(c)
return subSubMethod3(o);
else
return "";
}
//示例子子方法
public String subSubMethod1(Object o){
//etc etc
return "";
}
这对我来说是一个反复出现的问题,我希望有一种设计模式来解决这类问题。
有这样的设计模式吗?