隐式超级构造函数。必须显式调用另一个构造函数

Implicit super constructor. Must explicitly invoke another constructor

我刚刚进入我的 类 继承,这是我遇到的第一个错误。除了在错误部分抛出标题的构造函数外,大部分代码都可以正常工作。

public class CellDoor extends CellPassage {

    // TODO: instance variable(s)!
    private String imageOpen,imageClosed;
    private boolean locked, occupied;
    private Item item;

    // Create a new cell in the dungeon with the specified image.
    // The CellDoor class represents an door that can be closed (locked) or open.
    // NOTE: an open door is allowed to hold an item (e.g. a gem or key).
    public CellDoor(String imageOpen, String imageClosed, boolean locked) {
        this.imageOpen = imageOpen;
        this.imageClosed = imageClosed;
        this.locked = locked;
    }

cellPassage 构造函数是:

public CellPassage(String image) {
    this.image = image;
}

有人可以给我一些建议吗?

您可能在 CellPassage class 中有一个不是默认构造函数的构造函数。这意味着 Java 无法通过调用默认超级构造函数来创建您的 CellDoor 对象。您必须在构造函数主体的第一行添加一个 super(...),其中 ... 是 CellPassage class.

中构造函数的参数
public CellDoor(String imageOpen, String imageClosed, boolean locked)
{
    super(imageOpen);
    this.imageOpen = imageOpen;
    this.imageClosed = imageClosed;
    this.locked = locked;
}

如果您提供来自 class CellPassage 的代码,我们将很容易确定您应该如何编写 CellDoor 构造函数