(static)정적 필드, 정적 메서드, 정적 클래스
정적 필드
- 객체를 생성하지 않아도 접근 가능 ex) Player라는 클래스가 있을때 static키워드가 있다면 Player.[변수명]으로 접근 가능
정적 메서드
- 정적 필드와 접근 방법이 같음
- 정적함수는 해당 객체가 생성되기전에 호출이 가능하기에 해당 클래스에 있는 일반 멤버변수에는 접근이 불가
정적 클래스
- 해당 클래스는 모든 멤버가 정적 필드, 정적 메서드로 이루어진 클래스
- 객체를 생성할 수 없음
공통점
사용사례
- 보통 싱글톤 패턴에 사용이 됨(어디서든 접근이 가능하므로)
단점
- 메모리에 올라가게 된 후 프로그램이 종료될 때까지 메모리에 남아있게 됨(메모리 낭비)
- 어디서든 접근이 가능하다는점에서 정보 은닉 부분에 취약함
- 해당 메모리에 접근해서 값의 삭제 / 수정이 될 수 있음
- 최소한의 static을 통해 최대한의 접근 방법을 고민 해야 함