Java 将类对象传递给需要超类对象的方法

Java 将类对象传递给需要超类对象的方法,java,Java,我有这个阶级的继承权 class Base {} class Derived extends Base {} 和一种方法 void foo(Class<? extends Base> cls) {} 和一个变量 Class<? extends Derived> derivedCls; 可以叫Fooderivedcl吗 如文中所述,它失败了,抱怨论点不相容。foo只会检查某个对象是否是cls的实例,因此调用没有逻辑问题。这与将集合作为集合传递,然后尝试添加整数不同 a

我有这个阶级的继承权

class Base {}
class Derived extends Base {}
和一种方法

void foo(Class<? extends Base> cls) {}
和一个变量

Class<? extends Derived> derivedCls;
可以叫Fooderivedcl吗

如文中所述,它失败了,抱怨论点不相容。foo只会检查某个对象是否是cls的实例,因此调用没有逻辑问题。这与将集合作为集合传递,然后尝试添加整数不同


asSubClass允许我从类转到“类”,但我看不到另一种方法

你可以叫Fooderivedcl。什么使你认为你不能?什么是编译错误?