자바 의 권한 관리

자바 에는 private,proctected,default,Public 등 네 가지 권한 이 있 습 니 다.쓰 지 않 으 면 default 이 고 모든 권한 은 다음 표 입 니 다.
private
default
protected
public
이 종 류 는 접근 할 수 있 습 니 다.
예.
예.
예.
예.
이 패 키 지 는 이러한 종류의 접근 이 아 닙 니 다.
아니.
예.
예.
예.
이 가방 이 아 닌 하위 클래스 에 접근 할 수 있 습 니 다.
아니.
아니.
예.
예.
비 본 가방 류
아니.
아니.
아니.
예.
다른 유형의 구성원 의 권한 은 클래스 의 권한 보다 크 면 안 되 며,크 면 클래스 의 권한 을 기준 으로 한다.즉 다음 과 같은 종류 입 니 다.
class Test{
    public int i=0;
    public void fun()
    {
        System.out.println(i);
    }
}

클래스 구성원 i 와 fun 은 Public 로 정의 되 지만 클래스 의 권한 은 default 이기 때문에 i,fun 의 권한 은 default 입 니 다.
대상 을 통 해 클래스 구성원 을 방문 할 때 도 권한 을 준수 해 야 합 니 다.다음 과 같 습 니 다.
class Test{
    public static void main(String[] args){
        Myclass a=new Myclass();
        a.fun1();//  ,  fun1    private
        a.fun2();
        System.out.println(a.i1);//  ,  i1    private
        System.out.println(a.i2);
    }
}
class Myclass{
    private int i1=0;
    int i2=0;
    private void fun1()
    {
        System.out.println("fun1()");
     }
     void fun2()
     {
         System.out.println("fun2()");
      }
}

권한 을 계승 할 때 작은 범위 에서 큰 범위 로 만 변경 할 수 있 습 니 다(또는 권한 이 변 하지 않 습 니 다).큰 권한 에서 작은 권한 으로 는 안 됩 니 다.다음 과 같은 예 입 니 다.
class parent{
    public void test()
    {
        System.out.println("hello");
     }
 }
 class children extends{
     protected void test() //  ,test      
     {
         System.out.println("hello");
     }
 }

좋은 웹페이지 즐겨찾기