👀 변수의 초기화
- 지역변수(lv)는 수동 초기화 해야함(사용전 꼭!!)
메서드() 안에서 선언되면 지역변수(lv)
- 멤버변수(iv,cv)는 자동 초기화된다.
✔예시)
↳ 인스턴스 변수 : 자동초기화
int x= 0;바꿔주지 않아도 0으로 자동 초기화되어 int y = x; → x에 0값이 자동으로 넣어짐
↳ 지역변수 : 수동 초기화
수동으로 초기화 해야 해서 int i = 0; 으로 바꿔줘야 오류가 안 남
👀 멤버변수의 초기화
1.명시적 초기화(=) (간단한 초기화)
↳ 참조형 변수의 초기화는 객체를 만들어서 넣어주어야 함
2.초기화 블럭 (복잡한 초기화에 사용)
- 인스턴스 초기화 블럭(iv) : { }
- 클래스 초기화 블럭(cv): static { }
3. 생성자 (iv초기화, 복잡한 초기화)
✔예시)
▶클래스 변수 초기화 시점 : 클래스가 처음 로딩될 때 단 한번
▶인스턴스 변수 초기화 시점 : 인스턴스가 생성될 때 마다
❗ 초기화 순서
① cv → iv
② 자동(0) → 간단(=) → 복잡(static{ }, 생성자)
'자바의 정석 > 객체지향' 카테고리의 다른 글
[객체지향] 포함관계 (0) | 2022.12.06 |
---|---|
[객체지향] 상속 (0) | 2022.12.05 |
[객체지향] 생성자 this(), 참조변수 this (0) | 2022.12.05 |
[객체지향] 생성자(constructor) (0) | 2022.12.02 |
[객체지향] 오버로딩(overloading) (0) | 2022.12.02 |