class ClassElement {
private int instaVar; // インスタンス変数
private static int classVar; // クラス変数
public ClassElement() {
instaVar++;
classVar++;
}
// インスタンスメソッド
public int getInstaVar() {
return this.instaVar;
}
// クラスメソッド
public static int getClassVar() {
// return this.classVar; // thisは使えない
System.out.println("クラスメソッド");
return classVar;
}
}
public class Sample7_4_1 {
public static void main(String[] args) {
System.out.println("クラス変数:" + ClassElement.getClassVar()); // インスタンスではなくてもクラスメソッドにアクセスできる
System.out.println();
// クラスをインスタンス化
ClassElement obj1 = new ClassElement();
System.out.println("クラス変数:" + ClassElement.getClassVar()); // クラスメソッドにアクセスするにはクラス.メソッド
System.out.println("インスタンス変数:" + obj1.getInstaVar());
System.out.println();
// クラスをインスタンス化2つ目
ClassElement obj2 = new ClassElement();
System.out.println("クラス変数:" + ClassElement.getClassVar());
System.out.println("インスタンス変数:" + obj2.getInstaVar());
}
}
|