Java - 将子类传递给键入超类的construstor

时间:2015-08-28 21:40:00

标签: java inheritance casting

我正在尝试为一部分课程建立一名经理。

public Manager(int amount, Class<SuperObject> c) {
    array = new SuberObject[amount];
    for (SuperObject o : array) {
        try {
            o = c.newInstance();
        } catch (Exception e) {
            //Do stuffs
        }
}

这很好但是当我打电话时:

Manager man = new Manager(5, SubClass);

我的编译失败,因为它不是明确的SuperClass。任何指导都会有所帮助。谢谢!

1 个答案:

答案 0 :(得分:2)

Class<SuperObject>我们需要SuperObject,只有SuperObject 。请改用Class<? extends SuperObject>