final은 사전적으로 '최종의, 마지막의'라는 의미를 가진다. 변수(variable), 메서드(method), 클래스(class)에 사용될 수 있으며 어떤 곳에 사용되느냐에 따라 다른 의미를 가진다. 하지만 공통적으로 변경이 불가능하고 확장할 수 없다는 점에서 유사하다.
final 키워드가 붙으면 다음과 같은 의미를 가지게 된다.
- 클래스
- 변경 또는 확장 불가능한 클래스, 상속 불가 - 메서드
- 오버라이딩 불가 - 변수
- 값 변경이 불가한 상수
final class FinalEx { // 확장, 상속이 불가능한 클래스
final int x = 1; // 변경되지 않는 상수
final int getNum() { // 오버라이딩이 불가한 메서드
final int localVar = x; // 상수
return x;
}
}
'개발 일지 > Java' 카테고리의 다른 글
[Java] 열거형(enumerated type, enum) (0) | 2023.01.04 |
---|---|
[Java] 인터페이스(Interface) (0) | 2023.01.02 |
[Java] 추상화(Abstraction) (0) | 2022.12.30 |
[Java] instanceof 연산자 (0) | 2022.12.30 |
[Java] 참조 변수의 타입 변환 (0) | 2022.12.30 |