2011. 9. 24. 22:02

클래스변수 인스턴스 변수 사용


public class exClass {
public static void main(String[] args){
System.out.println("클래스메서드"+    TestData.retInt(10,20)   );
System.out.println("클래스변수"+     TestData.classVar       );
TestData test = new TestData();
System.out.println("인스턴스변수"+  test.instanceVar       );
System.out.println("인스턴스메서드"+    test.retInt2(50, 60)      );
}
}

class TestData{
int instanceVar = 2000;
static int classVar = 100;
public static int retInt(int a, int b){
int result = 0; //지역변수
result = a+b;
return result;
}
public int retInt2(int a, int b){
int result = 0;
result = a+b;
return result;
}
}

//결과
클래스메서드30
클래스변수100
인스턴스변수2000
인스턴스메서드110
=================================================================
클래스 변수는  static 영역
인스턴스 변수는 heap 영역

클래스변수는 인스턴스 생성 불필요 클래스 이름.변수이름으로 접근가능
인스턴스변수는 인스턴스 생성후 사용가능