변수의 초기화
수동 / 자동 초기화
지역 변수는 수동으로 초기화 해야합니다.
지역 변수가 동작하는 스택 메모리는 재사용이 빈번하기 때문에 매번 초기화 해주면 성능이 떨어집니다.
그래서 그냥 해당 메모리에 있는 값으로 덮어 씌웁니다.
근데 해당 주소에 어떠한 값이 있는지 모르기 때문에 Java는 개발자에게 수동으로 초기화 하라고 요구합니다.
C 언어에서는 이를 garbage value 라 부릅니다.(C언어와 Java의 차이를 비교하면 이해가 쉽습니다.)
멤버변수(인스턴스 변수, 클래스 변수)는 자동으로 초기화 됩니다.
멤버 변수의 초기화
클래스 변수 : 클래스가 처음 로딩될 때 단 한번만 초기화 됩니다.
인스턴스 변수 : 인스턴스가 생성될 때 마다 초기화 됩니다.
초기화 방법
명시적 초기화(=)
초기화 블럭
생성자 초기화
Ref. Java의 정석 기초편 Chapter6(38, 39, 40, 41)
Ref. 변수의 초기화
Last updated