final
변수
메서드
클래스
예시
final int MAX = 100; //변수, 값 변경 불가
MAX = 200; //x 컴파일 오류
final class Myclass{} //클래스 상속 불가
class SubClass extends MyClass{} // x 오류
class Parent{
final void show(){System.out.println("Hello");}
}
class Child extends Parent{
void show(){} // x 오류
}
static
핵심 의미
사용 대상별 의미
예시
class MyClass{
static int count = 0; //모든 객체 공유lass MyClass{ static int count = 0; //모든 객체 공유
static void printCount(){
System.out.println("count = " + count);
}
}
MyClass.count =5 ; //객체 없이 접근 가능
MyClass.printCount(); // 객체 없이 호출 가능
같이쓰는 경우
class Contants{
static final double PI = 3.14159;
}
System.out.println(Constants.PI);