그 외/Java

자바의 접근제어자

poppy 2020. 9. 11. 13:03
반응형

접근제어자

자바에는 4가지의 접근제어자가 있습니다. private, protected, public, default 로 총 4가지입니다.

접근 범위는 private -> default -> protected -> public 순으로 더 넓어집니다.

 

1. public

public 접근제어자가 붙은 클래스나 멤버는 패키지에 상관없이 어떤 클래스에서도 접근 가능합니다.

2. default

접근제어자 없이 선언한 경우 default 접근 지정으로 선언되었다고 합니다. 접근제어자가 없는 클래스는 같은 패키지 내의 클래스들에게만 사용이 허용됩니다. 따라서 다른 클래스에게는 접근이 제한되고, 멤버에도 접근할 수 없습니다. 접근제어자가 없는 멤버는 같은 패키지 내에 있는 클래스만 디폴트 멤버에 자유롭게 접근할 수 있습니다.

3. private

private 접근제어자는 비공개를 지시하는 것입니다. private 멤버는 클래스 내의 멤버들에게만 접근이 허용됩니다. 같은 패키지라도 같은 클래스 내에 있지 않다면 접근이 허용되지 않습니다.

4. protected

protected 접근제어자는 보호된 공개를 지시하는 것입니다. protected 멤버는 같은 패키지의 모든 클래스에 접근이 허용되고, 다른패키지에 있더라도 하위 클래스의 경우에 접근이 허용됩니다. 

 

멤버 접근 지정
멤버에 접근하는
클래스
멤버의 접근 지정자
private default protected public
같은 패키지의 클래스 X O O O
다른 패키지의 클래스 X X X O
접근 가능 영역 클래스 내 동일 패키지 내 동일 패키지와 하위 클래스 모든 클래스

 

반응형

'그 외 > Java' 카테고리의 다른 글

배열(Array)과 ArrayList  (0) 2020.09.18
상속과 다형성  (0) 2020.09.13
Git Bash 설치 및 github 주요 명령어 정리  (0) 2020.09.07
Overriding(오버라이딩)과 Overloading(오버로딩)  (0) 2020.09.03
D2 Coding 폰트 적용  (0) 2020.08.24