JAVA final 키워드

강준우·2023년 1월 15일
0

Final은 변수, 메서드, 클래스에 적용하여 변경 불가의 동작을 수행하는 키워드이다.

final 변수


변수 앞에 final이 사용되면 변경 불가능한 변수, 상수로써 동작한다.
따라서 final로 지정한 변수의 값을 다시 설정하면 오류를 발생시킨다.

public class FinalEx {
	public static void main(String[] args) {
		final int finalValue = 0;
		finalValue = 1; finalValue = 2;	// 에러
	}
}

만약 변수 선언시 값을 설정하지 않은 경우, 생성자에 의해 한번만 값을 설정하는 방식으로 코드를 작성한다. 또한 다음과 같은 순서로 우선순위를 가진다.

  • 명시적으로 초기화를 하는 경우
  • 초기화 블럭에서 초기화를 해주는 경우
  • 생성자에서 초기화를 하는 경우

fianl 메소드


메소드에 final 키워드를 적용하면 재정의(오버라이딩)이 불가능한 메소드가 된다.

public class FinalEx {
	final void finalMethod() {
    	System.out.println("오버라이딩 불가");
      }       
}
class FinalExEx extends FinalEx {
	void finalMethod() {
    	System.out.println("오버라이딩 불가"); //에러 
      }       
}
   

final 클래스


클래스에 final 키워드를 적용하면 상속 불가능한 클래스가 된다.

public class FinalEx {   

}
class FinalExEx extends FinalEx { //에러
	   
}
profile
강준우

0개의 댓글

관련 채용 정보