final은 한 번 정해진 값을 변경할 수 없도록 만드는 키워드이다.
필드에 final을 붙이면 한 번 값이 할당된 이후에는 다시 값을 변경할 수 없는 상수 필드가 된다.
final 필드는 다음과 같은 방법으로 초기화할 수 있다.
final int number = 10;
또는 생성자에서 값을 지정할 수도 있다.
class Person {
final String name;
Person(String name) {
this.name = name;
}
}
final 필드는 한 번 초기화한 후에는 다른 값으로 변경할 수 없다.
number = 20; // ❌ 컴파일 오류
즉, final은 값이 변경되지 않도록 제한할 때 사용하는 키워드이다.