1단계 : 선언 단계 → 선언한 변수를 식별자(변수명)가 담기는 객체에 할당하는 단계 2단계 : 초기화 단계 → 변수에 할당할 메모리 공간을 부여하는 단계 3단계 : 할당 단계 → 정의된 변수에 데이터가 할당되는 단계 선언단계와 초기화 단계 사이, 변수에 할당할 메모리가 부여되기 전 단계 TDZ가 존재한다. TDZ 공간에 변수가 있는 동안에는 제대로 동작하지 않는다.