ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 접근제한자(public/protected/default/private)
    개발/자바JAVA 2024. 1. 26. 13:57

     

    (+)public : 어디서든(같은, 다른 패키지 모두)  접근 가능하도록 한다.

     

    (#)protected : 같은패키지의 클래스라면 무조건 접근 가능하고,

                              추가적으로 다른패키지의 클래스면 

                              "상속" 구조인 클래스에서만 접근 가능하도록 한다.

     

    (~)default : 같은패키지의 클래스 끼리만 접근 가능하도록 한다.

    (-)private : 해당 클래스에서만 접근 가능하도록 한다.

     

    >위에서부터 아래 순으로 직접 접근할 수 있는 범위가 좁아진다.

    > +, # ~, - : 클래스 다이어그램상의 표기이다.

     

     

     

     

    테스트를 위해 각 제한자를 만들어준다.

     

     

    얘들을 다른 패키지의 클래스에서 호출해 보겠다. 

    다른패키지 이다.

     

    >public : 어디서든 직접접근 가능

     

     

    얘는 이렇게 곧바로 접근이 가능하다.

     

     

     

    >protected : 같은 패키지에서는 직접접근 가능, 다른패키지에서는 직접접근 불가.

                           단, 상속관계에서는 접근 가능!!

     

    protected는 바로 접근하려니 빨간오류줄이 뜬다.

    같은 패키지에 Test클래스를 만들어서 호출해 보았다.

    같은 패키지에서는 접근이 가능하다.

     

    >default : 같은 패키지 끼리만 접근 가능하고, 상속관계도 안됨!!

    얘도 빨간줄이 뜬다.

     

     

    하지만 얘도 같은 패키지에서는 접근이 가능하다.

     

     

     

    >private : 해당 클래스 영역 내에서만 접근 가능

    얘도 마찬가지로 오류가 뜬다.

     

    이친구는 getter/ setter를 이용해서 불러와야한다.

     

     

Designed by Tistory.