我正在使用一些无法修改的类:
通用请求
SpecificRequest1(扩展GenericRequest)
SpecificRequest2(扩展GenericRequest)
这两个SpecificRequest类都共享许多方法(但是这些方法未在GenericRequest中声明,我知道这很不好,但是我无法更改)。
我想创建一个像这样的方法(尽可能分解):
private void fillRequest( GenericRequest p_request, boolean p_specificModeOne ) {
if( p_specificModeOne ) {
SpecificRequest1 l_specificRequest = (SpecificRequest1) p_request;
}
else {
SpecificRequest2 l_specificRequest = (SpecificRequest2) p_request;
}
l_specificRequest.commonMethod1();
l_specificRequest.commonMethod2();
}
我知道这不是有效的Java,但这就是想法。您是否认为可以对此做一些干净的事情?还是我必须创建两种不同的方法来处理SpecificRequest1和SpecificRequest2?
慕桂英3389331
相关分类