문법순서 : 접근지정자 static final
멤버변수 : 수정못하게 막아줌 //변수의 상수화. 상수 정의
메소드 : 메소드 오버라이딩 못하게 막아줌
클래스 : 상속 못하게 막아줌
package test;
/*final*/ class FinalTest { // 상속 못하게 막아줌. /*final*/주석 풀어서 테스트 해보기
public final int a = 10; // 인스턴스단위 상수
public static final int B = 20; // [클래스 단위 상수]
/*final*/ void prn() { // 메소드 오버라이딩 못하게 막아줌. /*final*/주석 풀어서 테스트 해보기
System.out.println("FinalTest prn()");
}
}
class SubFinalTest extends FinalTest { // 상속
// 메소드 오버라이딩
@Override
void prn() {
System.out.println("SubFinalTest prn()");
}
}
public class Test3 {
public static void main(String[] args) {
SubFinalTest sft = new SubFinalTest();
// sft.a = 20; // 상수이므로 수정 못한다
System.out.println(sft.a);
sft.prn();
}
}
'IT > Java' 카테고리의 다른 글
자바 인터페이스 interface (0) | 2018.07.21 |
---|---|
자바 추상클래스 (0) | 2018.07.21 |
자바 static, 클래스변수, 인스턴스변수 사용 예제 (0) | 2018.07.20 |
자바 static, 클래스변수, 인스턴스변수 (0) | 2018.07.20 |
자바 다형성 예제 (ArrayList) (0) | 2018.07.20 |