반응형
📍 접근제한자 (접근제어자)
접근제한자란 클래스 내에서 멤버의 접근을 제한하는 역할을 합니다.
접근제한자의 종류
자바에서의 접근제한자는 private > default > protected > public 총 네 가지가 있습니다.
private (-)
가장 강력한 접근제한자 입니다. 오직 클래스 내부에서만 사용할 수 있으며, 외부클래스에서는 접근할 수 없습니다.
default (~)
같은 패키지 내에서는 제한없이 접근할 수 있지만, 외부 패키지에서는 접근할 수 없습니다.
생성자를 선언할 때 public / private 생략 시 default 접근 제한을 가집니다.
protected (#)
같은 패키지 내에서 제한없이 접근 가능합니다. 다른 패키지는 상속 구조(부모 자식 간의 관계)일 때만 접근할 수 있습니다.
public (+)
어디서든 접근할 수 있습니다. (같은 패키지, 다른 패키지 모두)
접근제한자 | 적용 대상 | 접근 가능 대상 | 접근 불가 대상 |
public | 클래스, 필드, 생성자, 메소드 | 모든 대상 | 없음 |
protected | 필드, 생성자, 메소드 | 같은 패키지 또는 상속 관계 | 자식 클래스가 아닌 다른 패키지 클래스 |
default | 클래스, 필드, 생성자, 메소드 | 같은 패키지에 소속된 클래스 | 다른 페키지에 소속된 클래스 |
private | 필드, 생성자, 메소드 | 클래스 내부 | 클래스 외부 |
References
반응형
'🗂 Study > 자바' 카테고리의 다른 글
[Java] 객체지향이란? (0) | 2021.08.25 |
---|---|
[Java] 정적(Static)이란 무엇일까? (0) | 2021.08.04 |
[Java] 클래스(Class)와 객체(Object) (0) | 2021.07.30 |
[Java] 추상 클래스와 인터페이스의 차이점 (0) | 2021.07.23 |
[Java] 오버로딩(Overloading)과 오버라이딩(Overriding) (0) | 2021.07.14 |
댓글