본문 바로가기
🗂 Study/자바

[Java] 접근제한자

by 뿌맘 2021. 8. 19.
반응형

 

📍 접근제한자 (접근제어자)

접근제한자란 클래스 내에서 멤버의 접근을 제한하는 역할을 합니다.

 

접근제한자의 종류

자바에서의 접근제한자는 private > default > protected > public 총 네 가지가 있습니다.

 

private (-)
가장 강력한 접근제한자 입니다. 오직 클래스 내부에서만 사용할 수 있으며, 외부클래스에서는 접근할 수 없습니다.

default (~) 

같은 패키지 내에서는 제한없이 접근할 수 있지만, 외부 패키지에서는 접근할 수 없습니다.

생성자를 선언할 때 public / private 생략 시 default 접근 제한을 가집니다.

protected (#) 

같은 패키지 내에서 제한없이 접근 가능합니다. 다른 패키지는 상속 구조(부모 자식 간의 관계)일 때만 접근할 수 있습니다.

public (+)
어디서든 접근할 수 있습니다. (같은 패키지, 다른 패키지 모두)

 

 

접근제한자 적용 대상 접근 가능 대상 접근 불가 대상
public 클래스, 필드, 생성자, 메소드 모든 대상 없음
protected 필드, 생성자, 메소드 같은 패키지 또는 상속 관계 자식 클래스가 아닌
다른 패키지 클래스
default 클래스, 필드, 생성자, 메소드 같은 패키지에 소속된 클래스 다른 페키지에 소속된 클래스
private 필드, 생성자, 메소드 클래스 내부 클래스 외부

 

 


References

https://programmers.co.kr/learn/courses/5/lessons/187

https://kephilab.tistory.com/53

반응형

댓글