質問: Java学習中の者です。お答え頂いたら本当に助かります。。
回答: A a = new A();が実行されると、 クラスAの int x; int y; int z = x + y; が全て実行されます。 x、yは0で初期化され、それらの合計がzに格納されるので、z = 0です。 a.x = 3;が実行されると、x = 3となります。 a.y = 2;が実行されると、y = 2となります。 System.out.println("値は" + a.z + "です");が実行されると、 a.zの値を取得します。 zの値は0ですから、「値は0です」と出力されます。 「値は5です」と出力させたいのなら、以下のような変更が必要です。 class A { int x; int y; z() { return x + y; } } class B { public static void main(String[] args){ A a = new A(); a.x = 3; a.y = 2; System.out.println("値は" + a.z() + "です"); } }