java - 在派生类的泛型对象上调用基方法

标签 java class generics multiple-inheritance

尝试添加带有方法的基接口(interface),以便所有派生类都必须实现该方法或使用默认方法。使该方法可调用的最佳方法是什么?请参阅下面代码块中的注释。

public interface IA{}  

public interface IB{   
  public Integer doWork();  
}  

public interface IC extends IB{
}

class B implements IB{
  Integer doWork(){
     return 2;
  }
}

class C extends B implements IC{
   @Override
   Integer doWork(){
     return 7;
  }
}

//What do I need to do to cast clazz to an object so I can call the derived class' doWork method?
private Integer newClient(Class<T> clazz){
  ((B) clazz).doWork();
}

最佳答案

最终找到了解决方案:

B.class.cast(clazz); 

关于java - 在派生类的泛型对象上调用基方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52616434/

相关文章:

c++ - 具有继承的构造函数定义

generics - Kotlin类型参数的子类

go - 如何允许可转换为指针的泛型类型参数化另一个可转换为指针的泛型类型?

java - 如何创建一个循环来计算一个特定数字可以安装在另一个特定数字中的次数?

java - Struts2标签插入<br>

C++:继承的类具有名称相同的纯虚函数。如何在我的基类中分别覆盖它们?

c# - 如何按对象中的属性对 List<T> 进行排序

JavaFX 图像未在舞台上显示

java - j2me 中提供程序类的替代方案是什么

ios - 通过扩展 UIButton 类,使用 Swift 创建自定义按钮