以下是一个类:
public class LivingBeing { … }
接下来是
public class Human extends LivingBeing { … }
现在还有这个包装器:
public class LivingBeingWrapper<T extends LivingBeing> { … }
而且为了完整地呈现,还有一种方法。
public boolean validate(LivingBeingWrapper<LivingBeing> livingBeingWrapper)
现在,当编写以下代码时:
LivingBeingWrapper<Human> wrapper = createHumanWrapper();
validate(wrapper);
我遇到了以下编译错误:
类型MyType中的方法validate(LivingBeingWrappe<LivingBeing> livingBeingWrapper)对于参数(LivingBeingWrapper<Human>)不适用。
但是为什么呢?Human
继承自LivingBeing
。
public boolean validate(LivingBeingWrapper<? extends LivingBeing> livingBeingWrapper)
。 - Redandwhite