1

我在 NutShell 中阅读 Java 并遇到了数据隐藏。而不是我尝试了几个例子,并在例子的 1 中感到困惑。

假设我们有这两个类:

 Class Parent{
  public int a=1;
  }

 Class Child extends Parent {
  public int a=2;
 }

并在主函数中创建这两个类的对象:

public static void main (String args[])
{
    Child ch= new Child();
    Parent pa=new Child();

    System.out.println(ch.a);
    System.out.println(pa.a);
 }

输出是: 2 and 1 我不明白为什么第二行打印 1。由于 pa 是 Child 的对象,它应该隐藏父类的值。

谁能解释一下这是如何工作的?

4

0 回答 0