相关疑难解决方法(0)

为什么超类的实例变量没有在子类方法中重写

为什么超类的实例变量没有在子类方法中被覆盖,请参阅下面的代码..在哪个方法中打印被覆盖但是变量a不是.以及为什么代码允许在子类中写入重复变量

class B {
    int a = 10;
    public void print() {
        System.out.println("inside B superclass");
    }
}

class C extends B {
    int a = 20;
    public void print() {
        System.out.println("inside C subclass");
    }
}

public class A {
    public static void main(String[] args) {
        B b = new C();
        b.print(); // prints: inside C subclass
        System.out.println(b.a); // prints superclass variable value 10
    }
}
Run Code Online (Sandbox Code Playgroud)

java

36
推荐指数
1
解决办法
3万
查看次数

标签 统计

java ×1