2013년 8월 27일 화요일

자바 클래스 초기화

클래스가 메모리로 적재된 후  클래스가 사용 되기 전 한번 초기화 된다.
순서

오라클자바커뮤니티에서 설립한  개발자실무교육6년차 오엔제이프로그래밍 실무교육센터
(신입사원채용무료교육, 오라클, SQL, 튜닝, 자바, 스프링, Ajax, jQuery, 안드로이드, 아이폰, 닷넷, C#, ASP.Net)   www.onjprogramming.co.kr


-  모든 클래스변수는 Default 초기치(0, ‘\u0000’,false, null)로 초기화 된다.
- 클래스변수 초기화수식(Static initializers)과 클래스 초기화 블럭이 실행된다.
      예) public static int PI=3.14;
          public static int facs[] = new int[10];
          static { facs[0]=1;
          for(int I=1;I<10;I++) { facs[I] = facs[I-1]*I; }


New 연산자에 의한 작업 순서

-  객체를 위한 메모리 공간 할당
-  모든 인스턴스 변수는 Default 초기치(0, ‘\u0000’,false, null)로 초기화 된다.
- 인스턴스 변수 초기화수식(instance initializers)과 초기화 블럭이 실행된다.
- 생성자의 첫문장에서 다른 생성자를 호출하는 경우엔 이를 먼저 처리(서브클래스인 경우 명시적인 상위클래스 생성자에 대한 호출이 없으면 super()를 삽입하고 이를 실행한다.)
- 생성자의 나머지 부분을 실행한다.
  

댓글 없음:

댓글 쓰기