Java
[Java] static , final
maribel
2019. 7. 23. 17:15
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 클래스명
- --> 상속이 금지된 클래스, 멤버변수/메서드 제한없이 사용 가능, 오버라이딩 가능