我将如此清楚地解释我的问题:)
我在jar文件中使用webservice。在这个jar文件中,我将使用不同的类。每节课一年:
- 2012有一个名为 Service12 的课程。
- 2013有一个名为 Service13 的课程。
- 2014有一个名为 service14 的课程。
等等。
这些类只是使用,我无法更改此jar文件中的任何内容。
我将在webService中使用有关每年的课程,但不会使用if-else
,因为它是超过20年的服务方法。
public myObj methodA (int year){
ServiceXX serviceXX = myWebService.useThisService(ServiceXX.class);
}
myWebService 有一个像这样的通用方法:
public <T> T useThisService(Class<T> serviceClass) {
return (T) this.getService(serviceClass);
}
如何在没有任何if-else
的情况下对methodA进行编码我可以为每个年用户更正 ServiceXX 。
希望能够得到帮助。
答案 0 :(得分:5)
您可以使用myWebService.useThisService(Class.forName("Service" + year));
吗?