[Java] 접근 제한자

GilLog·2020년 11월 10일
1

Java

목록 보기
4/29

접근 제한자(Access Modifier)

접근 제한자는 모든 접근을 허용하는 public부터 시작해서 차례대로 protected, default(friendly), private 이렇게 4가지 종류가 있다.

public

Publicpackage, Class가 동일하지 않아도 모든 접근이 가능한 제한자이다.
같은 클래스내에서 허용, 같은 패키지 내의 다른 클래스 허용, 다른 패키지의 다른 클래스에서 허용

protected

Protected같은 package에서만 접근을 허용하고 다른 package에서 접근하려면 해당 Class를 상속받을 시에만 접근이 가능한 제한자이다.
같은 Class내에서 접근 허용, 같은 package의 다른 Class에서 접근 허용, 다른 package의 상속받은 Class 접근 허용, 다른 package의 다른 Class 접근 불가

default

default동일 package에서만 접근을 허용하는 제한자로, 접근 제한자가 생략되어 있을경우엔 기본적으로 default 접근 제한자가 적용된다.
같은 class 내에서 허용, 같은 package 내의 다른 class에서 허용, 다른 package에서는 접근 불가

default는 자동으로 선언되어 지므로 변수, 메소드 앞에 명시적으로 적어서는 안된다.
아무것도 선언되지 않았을 경우 default, friendly 접근 제한자로 선언되었다. 표현

private

private동일 package, 다른 package 모두 접근이 불가능하고 같은 Class 내에서만 접근을 허용하는 제한자이다.
같은 java 파일 안의 서로 다른 Class라도 접근 불가

접근 제한자 별 사용 가능 범위

  • Class에 사용 가능
    public, default

  • Construtor
    public, protected, default, private

  • Member 변수
    public, protected, default, private

  • Member method
    public, protected, default, private

  • 지역 변수
    접근 제한자 사용 불가


🙆‍♂️ 참고사이트 🙇‍♂️

JAVA 접근제한자 public protected default private[자바공작소]

JAVA 접근 제한자 (public, private, protected, default)[Minsub's Blog]

자바(Java)〃접근 제한자 private/ protected/ public / default[HunIT Blog]

java 접근제한자(Public, protected, default, private)[worri]

profile
🚀 기록보단 길록을 20.10 ~ 22.02 ⭐ Move To : https://gil-log.github.io/

0개의 댓글