자바는 public, private 같은 접근 제어자를 제공한다
외부에서 특정 필드나 메서드에 접근하는 것을 허용하거나 제한할 수 있다
기본적으로는 외부에서 필드 값을 직접 접근해서 변경하는 등의 작업을 막아
실수를 방지하는 역할을 한다
멤버 변수들에 private 을 주면 직접 접근할 수 없도록 하고
메서드를 통해 해당 필드에 대한 변경을 관리하도록 하여
원하는 데이터의 제한사항을 적용할 수 있다
주로 필드와 메서드, 생성자에 사용된다
클래스 레벨에도 일부 접근 제어자 사용 가능
접근 제어자는 속성과 기능을 외부로부터 숨기는 단계를 조절한다는 것
클래스 레벨에서의 접근 제어자는 public, defualt 만 사용할 수 있다
public 클래스는 반드시 파일명과 이름이 같아야 한다