public class StaticCount { int c; //인스턴스 변수 static int count; // 클래스(static)변수 /*객체 생성과 무관 호출에 의해 메모리에 올라가서 여러 객체에서 공유할 수 있음*/ public StaticCount(){ c++; count++; } }
call 1
call 3
메인
call 2
class StaticTest001{//정적 메서드 정의하기 private static int a=10; private int b=20; public static void SetA(int new_a){ a = new_a; } public static int getA(){ return a; } } public class StaticTest02 { public static void main(String[] args){ //System.out.println(StaticTest.a); //a가 private으로 선언되어서 컴파일 에러 발생 (접근제한 때문에 호출불가) System.out.println(StaticTest001.getA()); /*getA(),setA()가 static하기 때문에 getA(),setA()만 호출할 경우 객체 생성하지 않고 호출가능 StaticTest001 s1= new StaticTest001(); StaticTest001 s2= new StaticTest001();*/ StaticTest001.SetA(10000); int res1=StaticTest001.getA(); System.out.println(res1); System.out.println(StaticTest001.getA()); } }
10
10000
10000
'Java > Constructor (생성자)' 카테고리의 다른 글
예비 (0) | 2012.04.11 |
---|---|
static 기본3 (0) | 2012.04.11 |
static 기본 (0) | 2012.04.11 |
정직 멤버변수와 인스턴스 멤버 변수의 차이점 (0) | 2012.04.11 |
메소드 간단 예제 (0) | 2012.04.11 |