Java/[inflearn] 자바 기본
[김영한_자바기본][8.final] finl 변수와 참조 (p.7-8)
줌인.
2024. 2. 16. 13:58
final을 참조형 변수에 사용하면 참조값을 변경할 수 없다.
ex) final Data data = new Data();
[p.7 / FinalRefMain]
public class FinalRefMain {
public static void main(String[] args) {
final Data data = new Data();
//data = new Data();
data.value = 10;
System.out.println(data.value);
data.value = 20;
System.out.println(data.value);
}
}
- `final` 키워드를 사용하여 선언된 변수는 한 번 할당된 참조값을 변경할 수 없다.
- 따라서 `final Data data = new Data();`와 같이 변수를 초기화한 후에는 해당 변수에 새로운 객체를 할당할 수 없다.
[p.8 / FinalRefMain_발췌] Data 타입 객체 생성 + final : 참조값을 할당했기에 참조값을 변경할 수 없다.
final Data data = new Data();
//data = new Data();
- data변수에 x001이라는 참조값을 담았다면, 새롭게 생성한 x002로 교체가 불가하다는 의미이다.
- 즉 초반에 생성한 참조값만 할당이 되고, 그 뒤는 교체가 불가하다.
*final 참조형 변수 도식화
728x90