멤버 또는 클래스에 사용되어 해당하는 멤버 또는 클래스를 외부에서 접근하지 못하도록 제한하는 역할
접근 제어자가 지정되어 있지 않다면 default임
접근 범위가 넓은 순
public > protected > default > private
제어자 | 같은 클래스 | 같은 패키지 | 자손클래스 | 전체 |
---|---|---|---|---|
public | O | O | O | O |
protected | O | O | O | |
default | O | O | ||
private | O |
하나의 소스파일(*.java)에는 public클래스가 단 하나만 존재할 수 있으며, 소스파일의 이름은 반드시 public클래스의 이름과 같아야 함
private인 클래스는 다른 클래스의 조상이 될 수 없기 때문에 앞에 final을 추가하여 상속할 수 없는 클래스임을 알리는 것이 좋음
접근 제어자를 사용하는 이유
java의 정석 chapter7