重写接口的setter方法?

时间:2019-12-04 17:15:04

标签: java object interface

我正在全力以赴如何实现我在这里想要实现的目标。 请原谅我的榜样,但这是我能想到的最好的例子。假设我有一个“动物”界面。动物总是有一个父母,其本身与其自身具有相同的类型。

public interface Animal {
    Animal getParent();
    void setParent(Animal parent);
}

我现在有一个名为“人类”的子类,该子类实现了“动物”接口。但是,当然应该始终将其getParent()和setParent()限制为另一个人。

class Human implements Animal {

    private Human parent;

    @Override
    public Human getParent() {
        return parent;
    }

    @Override
    public void setParent(Human parent) {
        this.parent = parent;
    }
} 

由于有“ @Override”注解,因此可以覆盖“ getParent”方法,但不适用于“ setParent”。我的设计错了吗?应该如何实施?

0 个答案:

没有答案