[Java] 정적 초기화 블럭(static initialization block)

클래스에서 정적 변수나 매서드는 클래스 타입에 대한 인스턴스화 없이도 호출하거나 참조할 수 있는 요긴한 녀석들인데요.. 이 정적 변수를 사용하기 전에 미리 초기화해 놓을 필요가 있는 경우가… 대부분입니다. 뭐.. 간단히 클래스 안에서 정적 변수를 선언할때 값을 지정해 버리면 될 일이지만… 즉, 아래처럼요..

class IAMABOY {
    static int a = 100;
}

뭐.. 간단하죠? 하지만 여기에 더해서 추가적으로 자바에서는 정적 초기화 블럭이라는 방법을 제공합니다.. 가끔 사용하는 방법인지라.. 잊고.. 필요해서 사용할라치면 기억에서 가물가물.. 가물치가 되는지라.. 정리를 한번 해보렵니다.. 뭐.. 예시 코드 한방 날리면..

class IAMABOY {
    static int a = 100;

    static {
        for(int i=0; i<100; i++) {
            a = i;
        }
    }
}

즉.. 정적 초기화 블럭은 클래스의 인스턴스화에 상관없이 딱 한번 호출되는 절차적인 코드들로 이루어진 블럭입니다.. 요놈.. 요놈.. 가만히 보니.. 단위 테스트 기능 구현에 적용하면 딱... 이겠구나.. 싶어집니다..

플래시로 만들어본 간단한 파티클 시스템

이제 곧.. RIA 기반의 GIS 엔진 개발을 시작하게 됩니다.. 몇가지 RIA 기술중(JavaFX, SilverLight, Flash)에 Flash를 선택하였고.. 이 선택에 있어서 여러가지 고민도 많았지만.. 이제 RIA 기술에 대한 선택의 고민은 더 이상한 불필요할듯하고.. 본격적으로 개발에 들어갑니다.

아마도 이 제품에 대한 개발을 위해 기본적인 설계와 자료 수집을 위해 대략 어느 정도의 시간이 소요될 것이고.. 3~4개월 정도의 시간을 들여 기본적인 형태의 RIA 기반의 지도 솔루션(코드명, FingerEyes-Xr)을 개발할테구요..

시작에 앞서 플래시를 이용하여 간단한 파티클 시스템을 만들어 보았습니다. 그다지 멋지지는 않지만.. 그냥 머리속에 간단한 생각을 만들어 보았습니다..

[Flash] /attachment/1286715815.swf 

참고로 비트맵에 대한 백버퍼를 사용하여 메모리의 증가에 대한 문제를 고려치 않아… 장시간 실행시켜 놓으면 메모리 폭주가 발생성과 속도가 점점 느려질 소지가 다분합니다만.. 걍 가볍게 봐주시기 바랍니다..