초기화 블록

홈 > 공유팁! > 프로그램 관련
프로그램 관련

초기화 블록

꽁스짱 0 1216

정적 초기화 블록
  - static 명시, 클래스가 로드될때 한번 초기화, 클래스변수(필드)의 초기화
비정적 초기화 블록
  - new 할때마다 초기화, 인스턴스변수(필드) 초기화

class initialTest {
static int[] randomValue = new int[10];
static {  //정적 초기화 블록
System.out.println("정적 초기화 블록 실행됨...");
for(int i=0;i<randomValue.length;i++) {
randomValue[i] = (int)(100*Math.random());
}
}
void list() {
  System.out.println("");
for(int i=0;i<randomValue.length;i++) {
System.out.print(randomValue[i]+" ");
}
  System.out.println("");
}
public static void main(String[] args) {
initialTest init = new initialTest(); initialTest init2 = new initialTest();
init.list();  init2.list();
}}

비전적초기화인경우엔 

앞의 예제에서 정적 초기화 블록의 static 구문을 삭제
선언부의 randomValue에서 static 삭제… 


0 Comments
제목