자바의 접근 제어자에는 4가지가 있다. 이 접근 제어자는 클래스, 메소드, 인스턴스 및 클래스 변수를 선언할 때 사용된다.
자바에는 public, protected, package-private(접근 제어자 없음), private로 총 4가지 접근 제어자가 있다. 각 접근 제어자의 의미는 다음과 같다.
접근 제어자를 누가 접근할 수 있는지 표로 정리해보면 다음과 같다.
해당 클래스 안에서 | 같은 패키지에서 | 상속 받은 클래스에서 | import한 클래스에서 | |
public | O | O | O | O |
protected | O | O | O | X |
package private | O | O | X | X |
private | O | X | X | X |
또한 public으로 선언된 클래스가 소스 내에 있다면, 그 소스 파일의 이름은 public인 클래스 이름과 동일해야만 한다.
참고