1

私は NutShell で Java を読んでいて、Data Hiding に出会いました。そして、いくつかの例を試して、例の1つで混乱しました。

次の 2 つのクラスがあるとします。

 Class Parent{
  public int a=1;
  }

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

そして、主な機能でこの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 なぜ 2 行目が 1 を出力しているのかわかりません。pa は Child のオブジェクトであるため、親クラスの値を隠しているはずです。

誰でもこれがどのように機能するか説明できますか?

4

0 に答える 0