안녕하세요 IT 뽀로로입니다.
오늘은 final 키워드에 대하여 알아보도록 할 건데요~
final이 사용되는 곳은 클래스와 메서드, 필드입니다!
바로 들어가 봅시다!!
#final 클래스
final이 클래스 이름 앞에 사용되면 해당 클래스를 상송받을 수 없음을 지정합니다.
final class A{
....
}
class B extends B{ //ERROR
....
}
#final 메서드
메서드 앞에 final 속성이 붙으면 이 메서드는 더 이상 오버라이딩할 수 없음을 지정합니다.
서브 클래스가 슈퍼클래스의 메서드를 오버라이딩하지 못하게 하고, 수퍼클래스의 메소드를 사용하려거든
무조건 상속받아 사용하도록 할 때 사용한다.
public class A{
protected final int aa(){...}
}
public class B extends A{
protected final int aa(){...} //ERROR
}
#final 필드, 상수 정의
자바에서 상수를 정의할 때 사용하는 방법이다.
필드 멤버에 final 키워드를 붙여 상수화 한다
public class A{
final int number = 10; //상수 정의, 이때 초기값을 반드시 설정
void f(){
int[] intArray = new int[number]; //상수 활용
number = 10; //ERROR, 상수이므로 변경 불가능
}
}
'IT Study > JAVA' 카테고리의 다른 글
[JAVA] 16.추상클래스 (0) | 2019.09.15 |
---|---|
[JAVA] 15.업캐스팅, 다운캐스팅, instanceof (0) | 2019.09.08 |
[JAVA] 13.static 멤버와 final 키워드 (0) | 2019.09.04 |
[JAVA] 12.접근 지정자 (0) | 2019.09.04 |
[JAVA] 11.생성자 (0) | 2019.09.02 |