이론 정리/java
final
철매존
2023. 1. 24. 01:39
728x90
final
이거 은근 많이 쓰이는데 생각보다 아무생각 없이 쓰게된다.
일단 final은 클래스, 메소드, 멤버변수, 지역변수에 사용될 수 있는데 이걸 쓰면
- class
- 변경, 확장될 수 없는 클래스가 된다.
- 다른 클래스의 조상이 될 수 없다!
- method
- 변경될 수 없는 메소드가 된다.
- 오버라이딩을 통한 재정의가 불가능하다.
- 멤버/지역변수
- 값을 변경할 수 없는 상수가 된다.
- 단 한번의 초기화만 가능하다!!
- 값을 변경할 수 없는 상수가 된다.
public final class Test { // 조상이 될 수 없는 클래스
final int max_size = 100; // 값을 변경할 수 없는 멤버 변수 (상수)
final void getMaxSize() { // 오버라이딩 할 수 없는 메소드
final int localValue = max_size; // 값을 변경할 수 없는 지역 변수 (상수)
}
}