멤버 또는 클래스에 사용되어 해당하는 멤버 또는 클래스를 외부에서 접근하는 것을 허용하거나 제한하는 역할을 한다.
클래스, 멤버변수, 메서드, 생성자에서 사용될 수 있다.
- public : 모든 외부 호출을 허용
- protected : 같은 패키지안에서 호출을 허용, 패키지가 달라도 상속 관계의 호출은 허용
- dafault : 같은 패키지안에서 호출을 허용 (접근제어자 생략 시 자동으로 default 적용)
- private : 모든 외부 호출을 제한
- 클래스 : public, default
- 메서드 : 모든 접근제어자
- 멤버변수 : 모든 접근제어자
- 지역변수 : 사용 불가