Java

[Java] final 예약어

circle.j 2022. 9. 21. 10:09

final은 '마지막'이라는 의미로 더 이상 수정할 수 없다는 뜻이다.

자바 프로그램에서는 final 예약어를 변수, 메서드, 클래스에 사용할 수 있다.

 

사용 위치 설명
변수 final 변수는 상수를 의미한다.
메서드 final 메서드는 하위 클래스에서 재정의 할 수 없다.
클래스 final 클래스는 상속할 수 없다. 

 

간단한 예제를 통해 상수를 의미하는 final을 이해해 본다.

 

두 개의 변수를 선언했다.

하나는 int num, 다른 하나는 상수로 선언한 final int NUM이다.

num으로 선언한 변수에는 50이라는 값을 대입할 수 있었지만, NUM으로 선언한 상수에는 값을 대입하는 순간 오류가 발생하는 것을 알 수 있다.

 

package ch09_4;

public class Constant {
	
	int num = 10;
	final int NUM = 100; // 상수 선
	
	public static void main(String[] args) {
		
		Constant cons = new Constant();
		cons.num = 50;
		// cons.NUM = 200;	// 상수에 값을 대입하여 오류 발생
		
		System.out.println(cons.num);
		System.out.println(cons.NUM);
		
	}
	
}