static 초기화

2013. 1. 11. 10:10Programming/JAVA

오픈 소스를 분석하다가 의문(?)스러운 코드를 접하게 되었다.

C, C++ 개발자로서는 이해할 수 없는... ㅋㅋ

저 static {} 는 도대체 모지??? 함순가.. property인가..

구글링을 해 본 결과, JAVA에서는 static 변수를 초기화 할 때 위와 같이 사용한다고 한다.

간단히 

static int a = 3; 

이렇게 선언할 경우도 있지만, 위와 같은 코드일 경우엔 마땅히 선언할 방법이 없기 때문이다.

그렇다고 생성자 함수에서 선언하고자 한다면, 인스턴스를 만들어야 하기 때문에 비효율적이다.

신기한 JAVA의 세계..