////////////////////////////////////////////////////////////////////////////////
// << 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