小编Kum*_*hek的帖子

关键词super如何在java-Java Puzzle中起作用

public class B {

    public B() {

    }

    private void m0(){
        System.out.println("BO");
    }
    public void m1(){
        System.out.println("B1");

    }

    public void test(){
        this.m0();
        this.m1();
    }
}



public class D extends B{

    /**
     * 
     */
    public D() {

    }

    public void m0(){
        System.out.println("DO");
    }
    public void m1(){
        System.out.println("D1");

    }

    public void test(){
      super.test();
    }

    public static void main(String[] args) {
        B d=new D();
        d.test();
    }


}
Run Code Online (Sandbox Code Playgroud)

我的问题是为什么输出BO,D1而不是BO,B1.我没有得到super关键字如何扮演调用子类的方法而不是父类的角色.

java inheritance private super

5
推荐指数
1
解决办法
102
查看次数

标签 统计

inheritance ×1

java ×1

private ×1

super ×1