我在 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 的对象,它应该隐藏父类的值。
谁能解释一下这是如何工作的?