不兼容的类型:需要 T 找到 T Android Studio

Incompatible types: required T found T Android Studio

我正在使用扩展 class:

的泛型
public <T extends Model> List<T> findAll() {
    ...
}

lint 检查器会显示这些错误(除非我删除 <T extends Model>):

我想实现 findAll 的 class 也必须是参数化的 class,这是您一定使用过的签名(或多或少):

public class TheClass<T> {

    private List<T> cachedObjects:

    public <T extends Model> List<T> findAll() {

    }

}

问题是 findAllT 覆盖了 class 的 T。只需为您的方法的参数使用另一个名称:

public <U extends Model> List<U> findAll() {

}

或者不参数化你的方法:

public List<T> findAll() {

}