java - 如何使用层次结构父类的方法?

标签 java oop inheritance

使用以下代码:

public class Animal {
    public void a() {
        System.out.println("Animal");
    }
}

public class Cat extends Animal {   
    public void a() {
        System.out.println("Cat");
    }
}

public class BlackCat extends Cat {
    public static void main(String[] args) {

        BlackCat blackCat = new BlackCat();
        blackCat.a();
    }
}

如何在 Animal 而不是 Cat 的子类 BlackCat 方法 a() 中使用?< br/> 我想在控制台中接收 Animal

最佳答案

我想您可以添加一个带有集合前缀的加法函数(在本例中为 _),并将其用作您的“ super 访问器”或您想要的任何名称。

public class Cat extends Animal {   
    public void a() {
        System.out.println("Cat");
    }
    public void _a() {
        super.a();
    }
}

关于java - 如何使用层次结构父类的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38845788/

相关文章:

java - 关于值范围的数组操作

c++ - 构造函数链接不使用类成员的默认值?

c++ - C++ 中的接口(interface),没有多重继承

python - 如何使用基类类型提示在函数中传递子类

java - 如何在Spring注释配置中指定bean的父级?

java - 发现是否在 try-finally block 的 finally 部分抛出异常

java - 如何确定 Android 设备上当前是否存在互联网连接并处于 Activity 状态?

c# - 将接口(interface)传递给 ASP.NET MVC Controller Action 方法

Java KeyListener 不起作用

c# - 观察者模式还是只是创建事件处理?