접근 제어자
접근 제어자(access modifier)는 클래스의 멤버(변수, 메소드)들의 접근 권한을 지정한다.
Java에서는 4가지 접근 제어자를 제공한다.
- private
- public
- protected
- default
private🔥
- 클래스 내부에서만 접근할 수 있는 변수, 메소드
- 사용자가 내부 로직에 접근하는 것을 막아 개발자가 의도하지 않은 오작동을 방지한다.
public🔥
- 클래스 외부에서 접근 가능한 변수, 메소드
- 사용자에게 객체를 조작하기 위한 의도로 작성된 수단만을 제공하여 결과적으로 객체의 사용에 집중할 수 있도록 돕는다.
protected
- 상속 관계에 있을 때 서로 다른 패키지에 있는 클래스의 접근을 허용
- 같은 패키지 → 접근 O
- 다른 패키지, 상속 관계 X → 접근 X
- 다른 패키지, 상속 관계 O → 접근 O
default
- 같은 패키지에 속하는 클래스에서만 접근 가능
- 같은 패키지 → 접근 O
- 다른 패키지 → 접근 X
클래스의 접근 제어자
클래스 멤버에 대한 접근 제어자 뿐만 아니라 클래스에도 접근 제어자가 있다.
클래스의 접근 제어자는 2가지가 있다.
- public
- default
클래스의 접근 제어자는 패키지와 관련되어 있다.
public
- 접근 제어자가 public인 클래스는 다른 패키지의 클래스에서 사용 가능하다.
- 제약 사항
- public 클래스가 포함된 소스코드는
public 클래스의 클래스명
과소스코드 파일명
이 같아야한다. - 즉, 하나의 소스코드에는 하나의 public 클래스만 존재할 수 있다.
- public 클래스가 포함된 소스코드는
default
- 클래스에 접근 제어자를 붙이지 않으면 default가 된다. default인 클래스는 같은 패키지에서만 사용 가능하다.
참고자료
'언어 > Java' 카테고리의 다른 글
[Java] 상속 (0) | 2023.08.22 |
---|---|
[Java] final (0) | 2023.08.10 |
[Java] abstract (0) | 2023.08.10 |
[Java] 클래스와 인스턴스 (0) | 2023.08.10 |