////////////////////////////////////////////////////////////////////////////////
//  << j221a.java >>
//
//  クラス(2):変数(インスタンス変数の性質)
//
//  同じクラスから作成されたオブジェクトが複数存在するとき、
//  他のオブジェクトでの値の更新の影響は受けないことを確認する。
//
//  (1)インスタンス変数aの定義と初期化。
//  (2)1番目のオブジェクトを作成。
//  (3)2番目のオブジェクトを作成。
//  (4)オブジェクトobj1の変数aの値を確認。
//     オブジェクトobj2の変数aの値を確認。
//  (5)オブジェクトobj1の変数aに111を代入。
//  (6)オブジェクトobj1の変数aの値を確認。
//     オブジェクトobj2の変数aの値を確認。
//  (7)オブジェクトobj1の変数aに222を代入。
//  (8)オブジェクトobj1の変数aの値を確認。
//     オブジェクトobj2の変数aの値を確認。
//
////////////////////////////////////////////////////////////////////////////////

class C {
  int a = 0; //(1)
}

class j221a {
  public static void main(String args[]) {

    C obj1 = new C(); //(2) 
    C obj2 = new C(); //(3)

    System.out.println("(4)obj1.a: " + obj1.a); //(4)
    System.out.println("(4)obj2.a: " + obj2.a); //(4)

    obj1.a = 111; //(5)

    System.out.println("(6)obj1.a: " + obj1.a); //(6)
    System.out.println("(6)obj2.a: " + obj2.a); //(6)

    obj2.a = 222; //(7)

    System.out.println("(8)obj1.a: " + obj1.a); //(8)
    System.out.println("(8)obj2.a: " + obj2.a); //(8)
  }
}
実行結果
% javac j221a.java
% java j221a
(4)obj1.a: 0
(4)obj2.a: 0
(6)obj1.a: 111
(6)obj2.a: 0
(8)obj1.a: 111
(8)obj2.a: 222