package

package 접근 제한

package 접근 제한은 자바의 기본 설정이며 따로 키워드를 작성할 필요가 없다. 즉, 아무런 키워드를 붙이지 않은 클래스, 메소드, 필드는 패키지 외부에서의 접근이 불가하다.

클래스

클래스는 다음 두 가지 형태를 가질 수 있다.

package 클래스

class Student {

}

public 클래스

public class Student {

}

아무런 키워드가 붙어있지 않은 클래스는 같은 패키지에서만 접근 가능하며, public 접근제한이 작성된 클래스는 해당 문서에서 따로 다루겠지만 외부에서 import를 통한 이용이 가능하다.

멤버 변수 및 메소드

멤버 변수와 메소드도 접근 제한자를 붙이지 않을 경우 package 접근제한이 자동 설정된다.

멤버

public class Student {
    String name;
    int score;
}

멤버 메소드

public class Student {
    void print() {
    
    }
}

package 접근제한이 설정되었으므로 외부 패키지에서는 해당 변수 또는 메소드에 접근할 수 없다. 클래스에 설정된 접근제한과는 별개이기 때문에 클래스는 접근 가능하더라도 변수나 메소드는 접근이 불가하다.

활용

근래의 프로그래밍은 가면 갈 수록 패키지 구분이 세분화되어 분류별로 패키지를 나누어 사용하는 것을 지향하고 있다. 따라서 별도의 접근제한을 설정하지 않아도 패키지만 잘 구분하면 불필요한 코드가 감소되는 효과가 발생한다.

Last updated