java/정의

접근 지정자

해가꿈꾸는달 2012. 5. 22. 21:56
반응형

>>>클래스의 접근 지정자<<< 는 2가지 경우가 있다.
public 과 default

 

1. public
    -> public으로 선언된 클래스는 어떤 다른 클래스에서도 사용할수 있다.

 

2. default
    -> 접근 지정자를 생략하면은 default 접근 지정자로 자동 선언 되는되, 이 경우는 같은 패키지 내에 있는
        클래스들만 접근이 가능하다.

 

 

>>>멤버 접근 지정자<<< 는 4가지 경우가 있다.
default, private, protected, public

 

1.public 멤버
   ->패키지의 내부, 외부 등 모든 클래스에서 접근이 가능하다.

 

2. private 멤버
    -> 비공개를 의미함.
    -> 같은 클래스 내부 멤버에 의해서만 접근이 가능. 어떤 다른 클래스에서도 접근할수 없다.
    -> 동인 패키지내의 다른 클래스더라도 접근이 불가능하다.

 

3. protected 멤버
    -> 보호된 공개를 의미함.
    -> 같은 패키지 내의 모든 클래스에서 접근이 가능.
    -> 다른 패키지의 클래스더라도 이 클래스를 상속받은 자식일 경우는 접근이 가능.

 

4. default 멤버
    -> 접근 지정자 선언이 생략될 경우, default로 선언되었다고 함 
    -> 동인한 패키지 내에 있는 모든 클래스에서 접근가능.

 

ex)
class Sample{
      public int a;               <- public 멤버
      protected int b;          <- protected 멤버
      private int c;              <-  private 멤버
      int d;                        <- default 멤버
}

반응형