Java中的变量继承(初学者)

Man*_*uel 1 java variables inheritance

我有一个带有变量bool var = true和getter方法的A类getVar().我正在尝试创建一个扩展A的类B并将var重新定义为bool var = false.代码:

public class A{
    protected boolean var = true;
    public boolean getVar(){
        return var;
    }
}

public class B extends A{
    protected boolean var = false;
}
Run Code Online (Sandbox Code Playgroud)

问题是,如果我执行:

B b_class = new B();
System.out.println(b_class.getVar());
Run Code Online (Sandbox Code Playgroud)

我获得true并且我没有理解为什么.我做错了什么?

Sea*_*wen 7

你没有"继承"变量; B.var仅隐藏A.var,但仅限于B.你在呼唤getVar(),一种方法A,它看到了A.var,哪个是true.