对象构造/继承/泛型中的Java问题

时间:2018-05-26 09:22:56

标签: java generics design-patterns

假设我有一个类ApiClient(自动生成),它没有实现接口。

还有另一个类X,它扩展了ApiClient以获得一些额外的重写方法。

class X extends ApiClient{
  X (Settings s){
    super();
    this.setPropertyInheritedfromApiClient-A("food");
    this.setPropertyInheritedfromApiClient-B(thisClassMethod());
 } 

  thisClassMethod(){ return "wee" ; }      

}

类X的类似,并且每个类都派生自与ApiClient相同的类,但由于这些是自动生成的,因此包将不同,并且某些字段的值将与url不同。要离题,每个ApiClient代表一个不同的WebService端点。

虽然我可以继续为每个对应于每个ApiClient(为不同的WebService Endpoint定义)的每个类编写类,但逻辑基本上保持不变。

我想要像

这样的东西
class X extends T {
 X (Settings s){
        super();
        this.setPropertyInheritedfromApiClient-A("food"); // FAIL since Type of super class is not known
        this.setPropertyInheritedfromApiClient-B(thisClassMethod()); //FAIL
     } 

}

如何从Java Generics方式或应用哪种设计模式处理此问题?

我无法想到问题的标题 - 请建议

0 个答案:

没有答案