본문 바로가기

Java

[Java] static , final

1. 정적(static) 변수

  • static 멤버변수 + static 메서드
  • 개별 객체를 생성하지 않아도 메모리에 먼저 로드됨
  • 형식1) 클래스명.static멤버변수
  • 형식2) 객체명.static멤버변수
  • 일반 메서드 및 static 메서드 내부에서 자유롭게 접근 가능

2. 정적(static) 메서드

  • static 멤버변수만 접근 가능한 메서드
  • 일반 멤버변수는 접근 불가
  • 형식1) 클래스명.static메서드( )
  • 형식2) 객체명.static메서드( )
  • static 메서드 내부에서는 static 메서드만 호출 가능
  • 객체 생성 없이 호출 가능

3. final

  • 형식1) final 멤버변수/지역변수
  • --> 값을 변경할 수 없는 상수, 대문자로 표현
  • ex) final COUNT = 1;
  • 형식 2) final 메서드명( )
  • --> 상속은 허용해주지만 오버라이딩(=재정의)은 불가능
  • 형식 3) final class 클래스명
  • --> 상속이 금지된 클래스, 멤버변수/메서드 제한없이 사용 가능, 오버라이딩 가능