static 변수(즉 정적변수)란
- Class 당 하나만 생성되는 변수, 객체(인스턴스)를 아무리 많이 만들더라도 변수는 하나만 존재
- 객체가 생성될 때마다 새롭게 생성되는 멤버 변수와는 달리 초기에 한번만 생성되고 공유하여 사용가능
static 변수 생성 시기 : Class 이름이 언급되어 질때 생성 (new 뿐만 아니라 Class 명만 나와도 생성됨)
static 변수 사용 방법 : 클래스명.변수명 OR 객체.변수명모두 가능
예) 1. StaticSample aa = new StaticSample();
System.out.println(aa.sTotal)
2. System.out.println(StaticSample.sTotal);
static 변수 초기화 방법
1) static 변수 는 초기 생성시 초기화
public static int sTotal=0;
2) static 변수 는 초기 생성시 초기화. 최초 1회만 호출됨.
public static int sTotal=0;
public int nTotal=0;
static {
sTotal += 10;
//nTotal += 10; //Static initializer 사용시 사용할 수 없다는 메시지 발생
}
3) 참고 static initializer 에서 staic 을 빼면 생성자와 같은 역할을 함. 즉 객체 생성시 마다 호출됨.
public static int sTotal=0;
public int nTotal=0;
{
sTotal += 10;
nTotal += 10; //Static initializer 사용시 사용할 수 없다는 메시지 발생
}
static method / function (정적 함수)
1) 함수 앞에 static 을 붙이면 정적함수가 됨.
-> 즉 Instance 생성 없이 그 함수를 직접 호출할 수 있음.
예) public static void main (String[] args) {}
-> main 함수도 최초 호출되기 위해서는 static 으로 선언되어 있어야 함.
'취업아카데미-JAVA' 카테고리의 다른 글
12. 콘솔 입력과 출력 (0) | 2015.06.28 |
---|---|
11. 메소드 오버로딩과 String 클래스 (0) | 2015.06.28 |
9.접근 제어 지시자와 정보은닉, 그리고 캡슐화 (0) | 2015.06.28 |
8. 클래스패스와 패키지 (0) | 2015.06.28 |
7. 클래스와 인스턴스 (0) | 2015.06.28 |