접근 제한자는 말 그대로 접근을 제한하기 위해 사용됩니다.
접근은 클래스 및 인터페이스 그리고 이들이 가지고 있는 멤버의 접근을 말합니다.
접근 제한자는 public, protected, private 세 가지 종류가 있습니다.
먼저 클래스의 접근 제한부터 알아보자면, 클래스는 public, default 접근 제한을 가집니다.
클래스를 선언할 때 public을 생략했다면 클래스는 default 접근 제한을 가지게 됩니다.
클래스가 default 접근 제한을 가지면 같은 패키지(package)에서는 사용할 수 없습니다.
물론 경우에 따라 import를 활용하여 클래스에 접근할 수도 있습니다.
클래스에 public을 붙였다면 클래스는 다른 패키지에서도 아무런 제한 없이 사용할 수 있습니다.
다음으로 생성자의 접근 제한에 대해 살펴보겠습니다.
생성자는 public, protected, default, private 접근 제한을 가집니다.
public 접근 제한자는 모든 패키지에서 제한 없이 생성자를 호출할 수 있습니다.
protected 접근 제한자는 같은 패키지와 자식 클래스에서 생성자를 호출할 수 있습니다.
default 접근 제한자는 같은 패키지에서는 제한 없이 생성자를 호출할 수 있습니다.
private 접근 제한자는 동일한 패키지이건 다른 패키지이건 상관없이 생성자를 호출하지 못합니다. 오로지 클래스 내부에서만 생성자를 호출할 수 있습니다.
마지막으로 필드와 메서드의 접근 제한에 대해 알아보겠습니다.
필드와 메서드는 생성자의 접근 제한과 동일하게 public, protected, private, default 접근 제한을 가집니다.
각각의 접근 제한자 내용 또한 동일하게 적용됩니다.
'프로그래밍 언어 > 자바 (Java)' 카테고리의 다른 글
[자바(Java) 공부하기] 20. 다형성 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.20 |
---|---|
[자바(Java) 공부하기] 19. 상속 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.19 |
[자바(Java) 공부하기] 18. 중첩 클래스 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.18 |
[자바(Java) 공부하기] 17. 지정 예약어 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.17 |
[자바(Java) 공부하기] 15. 클래스 배열(객체 배열) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.15 |
[자바(Java) 공부하기] 14. 생성자 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.14 |
[자바(Java) 공부하기] 13. 필드 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.13 |
[자바(Java) 공부하기] 12. 클래스 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.12 |