-
JAVA 접근 제어자(access modifier)Java 2023. 10. 8. 20:58
접근 제어자 (access modifier)
- private < default < protected < public 순으로 보다 많은 접근을 허용
- 두 개 이상 같이 사용할 수 없습니다.
- 정보 은닉을 위해 사용한다.
- 정보 은닉(data hiding) : 사용자가 굳이 알 필요가 없는 정보는 사용자로부터 숨겨야 한다는 개념
private
- private이 붙은 변수나 메서드는 해당 클래스 안에서만 접근이 가능하다.
- private 멤버에 직접 접근할 수 없으며, 해당 객체의 public 메소드를 통해서만 접근할 수 있습니다.
- private 멤버는 public 인터페이스를 직접 구성하지 않고, 클래스 내부의 세부적인 동작을 구현하는 데 사용됩니다.

public
- public 접근 제어자가 붙은 변수나 메서드는 어떤 클래스에서도 접근이 가능하다.
- public 접근 제어자를 사용하여 선언된 클래스 멤버는 외부로 공개되며, 해당 객체를 사용하는 프로그램 어디에서나 직접 접근할 수 있습니다.
- public 메소드는 private 멤버와 프로그램 사이의 인터페이스(interface) 역할을 수행한다고 할 수 있습니다.

default
- 별도로 설정하지 않는다면 변수나 메서드는 default 접근 제어자가 자동으로 설정되어 동일한 패키지 안에서만 접근이 가능하다.
- 같은 클래스의 멤버와 같은 패키지에 속하는 멤버에서만 접근이 가능

protected
- 동일 패키지의 클래스 또는 해당 클래스를 상속받은 클래스에서만 접근이 가능하다.
- 부모 클래스에 대해서는 public 멤버처럼 취급되며, 외부에서는 private 멤버처럼 취급됩니다.

* private 멤버로 정보를 은닉하고, public 멤버로 사용자나 프로그램과의 인터페이스를 구축합니다.
출처)
'Java' 카테고리의 다른 글
자바 직렬화 & 역직렬화(2)_사용법 (0) 2023.10.09 자바 직렬화 & 역직렬화(1)_기본 지식 (0) 2023.10.08 자바 Garbage Collection에 대한 개념 (0) 2023.10.08 자바 JVM의 런타임 데이터 영역 (Runtime Data Area) 자세한 구조 (0) 2023.10.08 자바 알파벳과 아스키코드 (0) 2023.08.13