본문 바로가기
Study/java

Java final의 의미와 문법

by 얏옹이 2022. 11. 13.
반응형

 

Final 예약어에 대해서 알아보도록 하자.

 

final 예약어는 변수앞에 올수도있고, 메서드 앞에 올수도 있고, 클래스 앞에 올수도 있다.

 

각각 어느 타입의 앞에 오느냐에 따라서 수행하는 임무(?) 가 달라지는 녀석이다.

 

일단 final 이 변수 앞에 오게되면 "값이 변경될수 없는 상수"를 담고 있는 변수가 된다.

 

그리고 이 final이 붙은 변수는 값을 최초에 딱 "한번"만 할당할수 있다. 한번 할당하고 난 뒤에는 그 변수에 다른값을 할당할수가 없다.

 

지구의 둘레는 40,075km이다. 이는 지구가 두쪽이 나지않는이상 변하지 않는 값일것이다.

 

public final long earth = 40075; 

 

변수를 설정하면서 값을 할당했으므로, 수정이 불가능하다

 

이런식으로  변하지 않는 값을 변수에 할당할때, final을 이용하여 값을 할당하면, 혹여나 실수로 값을 변경하거나 하는 사태를 미연에 방지한다.

 

 

Method 앞에 final이 붙게되면 하위클래스에서 Override 할수 없는 고유의 method가 된다. 즉 하위클래스에서 재정의 할수가 없기때문에 일종의 '규칙'과 '틀'이 있는 메서드가 되는것이다.

 

마지막으로 Class에 Final이 붙게되면 더이상 상속되지않는 클래스가 된다.

final이 붙은 class는 더이상 하위클래스로 상속될수가 없다.

 

 

 

 

 

 

 

 

 

 

반응형