본문 바로가기
교육, 학습/멀티캠퍼스_풀 스택

JAVA 문법 - final 제어자(변수, 메서드, 클래스 별 의미)

by 개발하는 경제학도 2022. 1. 9.

강의 소개

현재 수강하고 있는 멀티캠퍼스 k-digital 지능형 웹서비스 풀 스택 과정을 수강하며 적은 내용입니다.

교재로는 자바의 정석을 사용하고 있습니다.


final

자바 final 제어자는 '마지막', '변경할 수 없다'는 의미로 사용된다.

final은 클래스, 메서드, 멤버 변수, 지역변수에 사용될 수 있다.

 

코드로 확인하는 final 제어자

final class FinalTest { // final + class: 상속을 통한 하위 클래스 생성 불가
	final int Max_size = 5; // final + 멤버변수: 상수가 되어, 값을 변경할 수 없다
    
    final void getMaxSize() { // final + 메서드: 하위 클래스에서 오버라이딩(= 메서드 재정의)를 할 수 없다
    	final int Max_result = Max_size; // final + 지역변수: 상수가 되어, 값을 변경할 수 없다
    }
}

 

1. final + 변수

멤버변수, 지역변수 모두에 붙을 수 있으며 final이 붙으면 상수라는 뜻으로 아예 바꿀 수 없다.

 

2. final + 메서드

**오버 라이딩(= 메서드 재정의) 불가라는 뜻이다.

 

 

 

3. final + 클래스

상속할 수 없다. 부모 클래스가 될 수 없다.

따라서 상속이 필요한 오버 라이딩도 자연히 불가하다.

 

 

출처: 자바의 정석(남궁 성 저), 멀티캠퍼스

댓글