Java

Final 키워드

BINTHEWORLD 2022. 5. 21. 16:45

절대 변하지 않는 특정한 것을 정하고 싶을 때 Final을 사용

이 키워드는 변수, 메소드, 클래스에 모두 사용할 수 있음

변수에 사용할 경우 변하지 않는 상수가 되며,

메소드가 사용할 때는 재정의가 불가능한 메소드(=오버라이딩 불가)가 되며,

클래스에 사용할 때는 상속이 불가능한 하나의 완전한 클래스가 되는 것


final 메소드 오버라이딩 불가 예제

Parent.java

// final 예제
public class Parent {
	public final void show() {
		System.out.println("Hi!");
	}

}

Main.java

// final 예제
public class Main extends Parent{

	/*
	public void show() { // 부모 클래스 final 메소드는 재정의 불가
		System.out.println("Hello!"); 
	}
	*/
	
	
	public static void main(String[] args) {
		Main main = new Main();
		main.show();
	}

}