SeouliteLab

Java에서 Final 키워드의 활용과 의미 본문

카테고리 없음

Java에서 Final 키워드의 활용과 의미

Seoulite Lab 2024. 3. 26. 13:36

소개:
Java 프로그래밍에서 Final 키워드는 변수, 메서드 및 클래스에 적용될 수 있으며 중요한 역할을 합니다. 이 글에서는 Final 키워드의 의미와 활용에 대해 알아보고 예제를 통해 설명합니다.

설정:
특별한 설정은 필요하지 않습니다.

Final 키워드 이해하기:
Final 키워드는 해당 요소가 변경될 수 없음을 나타냅니다. 변수에 사용될 경우 값을 한 번 할당하면 변경할 수 없습니다. 메서드에 사용될 경우 하위 클래스에서 오버라이드할 수 없습니다. 클래스에 사용될 경우 상속을 허용하지 않습니다.

예제 1: Final 변수

public class FinalVariableExample {
    public static void main(String[] args) {
        final int x = 10; // Final 변수
        // x = 20; // 컴파일 오류: 값을 변경할 수 없음
        System.out.println(x); // 출력 결과: 10
    }
}

설명:
위 예제에서 x 변수는 Final로 선언되어 있으므로 값을 한 번 할당하면 변경할 수 없습니다. 따라서 x = 20;과 같이 재할당하려고 하면 컴파일 오류가 발생합니다.

예제 2: Final 메서드

public class FinalMethodExample {
    public final void display() { // Final 메서드
        System.out.println("This is a final method.");
    }
}

class SubClass extends FinalMethodExample {
    // 컴파일 오류: Final 메서드를 오버라이드할 수 없음
    // void display() { }
}

설명:
위 예제에서 display 메서드는 Final로 선언되어 있으므로 하위 클래스에서 오버라이드할 수 없습니다. 따라서 SubClass에서 display 메서드를 오버라이드하려고 시도하면 컴파일 오류가 발생합니다.

예제 3: Final 클래스

public final class FinalClassExample { // Final 클래스
    // Final 클래스이므로 상속할 수 없음
}

// 컴파일 오류: Final 클래스를 상속할 수 없음
// class SubClass extends FinalClassExample { }

설명:
위 예제에서 FinalClassExample는 Final로 선언되어 있으므로 상속할 수 없는 Final 클래스입니다. 따라서 SubClass에서 FinalClassExample를 상속하려고 하면 컴파일 오류가 발생합니다.