EEALL@ONCE
☕ Java에서 Final 이란? 본문
728x90
Java에서 Final 이란?
🐭 :
자바에서 `final`은 변수, 메서드, 클래스에 적용되는 키워드로 사용됩니다. `final`을 사용하면 해당 요소가 변경되지 않고 불변(immutable)하게 만들어집니다.
1. `final` 변수:
`final` 키워드를 사용하여 변수를 선언하면, 한 번 초기화한 이후에는 해당 변수의 값이 변경되지 않습니다. 즉, 변수는 상수가 됩니다.
final int age = 30;
// age = 31; // 에러! final 변수는 값을 변경할 수 없음.
2. `final` 메서드:
메서드에 `final` 키워드를 사용하면, 해당 메서드는 하위 클래스에서 오버라이드(재정의)할 수 없습니다.
public class Parent {
public final void printMessage() {
System.out.println("This method cannot be overridden.");
}
}
public class Child extends Parent {
// 오버라이드 시도
// public void printMessage() { // 에러! final 메서드를 오버라이드할 수 없음.
// System.out.println("This won't compile.");
// }
}
3. `final` 클래스:
클래스에 `final` 키워드를 사용하면, 해당 클래스를 상속할 수 없게 됩니다. 즉, 해당 클래스는 다른 클래스의 부모 클래스가 될 수 없습니다.
public final class ImmutableClass {
// ...
}
// 다음과 같이 final 클래스를 상속하려고 하면 에러가 발생합니다.
// public class SubClass extends ImmutableClass { // 에러! final 클래스를 상속할 수 없음.
// // ...
// }
`final` 키워드를 사용하여 변수, 메서드, 클래스를 선언하면 해당 요소가 변경되지 않는 것이 보장됩니다. 이를 통해 불변성을 유지하고 코드의 안정성을 높이는 데 도움이 됩니다. 또한, `final` 키워드는 컴파일러에게 최적화할 기회를 제공하여 성능 향상에도 도움이 될 수 있습니다.
즉 한번 타입에 값을 끼우면 못 바꾸는 것!
728x90
'언어💻 > 자바☕' 카테고리의 다른 글
☕자바 자료형 - 정수 자료형 (0) | 2023.07.31 |
---|---|
☕ 예약어(reserved words) (0) | 2023.07.31 |
☕ 클래스/상수/변수/매서드/패키지 명명 규칙 (0) | 2023.07.31 |
☕ 정적 자료형 (0) | 2023.07.31 |
☕리터럴(Literal) (0) | 2023.07.31 |