Java

[Java] static & final & static final 차이

junga 2022. 9. 12. 22:19

static


  • static 제어자는 "공통적인"이라는 의미로 사용된다.
  • 변수에 사용하면 해당 변수를 클래스 변수로 만들어준다.
  • 메소드에 사용하면 해당 메소드를 클래스 메소드로 만들어준다.


final


  • final 제어자는 "변경할 수 없다"는 의미로 사용된다.
  • 필드나 지역변수에 사용하면 값을 변경할 수 없는 상수(constant)가 된다.
  • 클래스에 사용하면 다른 클래스가 상속받을 수 없게 된다.
  • 메소드에 사용하면 해당 메소드는 오버라이딩을 통한 재정의를 할 수 없다.


static final


  • 클래스내부 또는 외부에서 참조의 용도로만 선언된 변수는 static final로 선언한다.