리셋 되지 말자

final 키워드 본문

Java(폐지)/Java 공부

final 키워드

kyeongjun-dev 2020. 7. 20. 14:10

fianl 키워드

final은 마지막, 최종이라는 의미를 갖는다. final 키워드가 나타날 수 있는 곳은 세 가지 클래스, 변수, 메서드다.
(객체 지향 언어의 구성요소가 이 세가지다...)

fianl과 클래스


아래와 같이 클래스에 final이 붙는다면 상속을 허락하지 않겠다는 의미다.

package finalClass;

public final class 고양이 {

}

그러면 아래처럼 상속을 할 수 없다.

package finalClass;

public class 길고양이  extends 고양이 {

}
  • 고양이에 빨간 줄이 생기면서 'The type 길고양이 cannot subclass the final class 고양이'라는 오류를 출력한다.

final과 변수


변수에 final이 붙으면 '변경 불가능한 상수'가 된다.

다른 언어에서는 읽기 전용인 상수에 대해 final 키워드 대신 const를 사용한다. 자바에서는 const를 키워드로 등록해 놓고 쓰지 못하게 한다.

final과 메서드


메서드가 final이라면 재정의, 즉 오버라이딩을 금지하게 된다.

'Java(폐지) > Java 공부' 카테고리의 다른 글

package 키워드  (0) 2020.07.20
instanceof 연산자  (0) 2020.07.20
클래스의 static 블록  (0) 2020.07.20
생성자(constructor)  (0) 2020.07.20
abstract 키워드 - 추상 메서드와 추상 클래스  (0) 2020.07.20
Comments