Java接口中返回类或子类类型的方法

时间:2015-09-30 04:13:44

标签: java

我有一个界面:

public interface Displayable {
    public Class <Screen> classToDisplay();
}

和一些课程:

public class Screen {

}

public class ScreenSubclass extends Screen {

}

public class Cue implements Displayable {

    @Override displayClass() {
        return ScreenSubclass.class;
    }

}

我收到IDE错误,告诉他他们是不兼容的类型。 classToDisplay()&#39;需要什么样的回报值?返回一个类或子类类型的Screen?

1 个答案:

答案 0 :(得分:2)

刚想通了。使用 ?通配符以及&#39;扩展&#39; ...

更改&#39; displayClass&#39;的返回类型到:

public Class<? extends Screen> displayClass();
相关问题