[java] Jigsaw 모듈의 접근 제어와 가시성 설정

Java 9부터 도입된 Jigsaw 모듈 시스템은 코드의 모듈화를 가능하게 해주었습니다. 이 모듈 시스템은 모듈 간의 의존성 관리와 코드의 격리를 쉽게 처리할 수 있게 해줍니다.

Jigsaw 모듈 시스템을 사용할 때, 모듈 내부에서의 접근 제어와 모듈 간의 가시성 설정은 매우 중요한 부분입니다. 이번 포스트에서는 Jigsaw 모듈에서의 접근 제어와 가시성 설정에 대해 알아보겠습니다.

접근 제어 키워드

Jigsaw 모듈 시스템에서는 접근 제어 키워드를 사용하여 다른 모듈에 대한 접근을 제어할 수 있습니다. 다음은 Jigsaw 모듈 시스템에서 사용할 수 있는 접근 제어 키워드입니다.

가시성 설정

모듈 간의 가시성은 아래와 같이 module-info.java 파일의 exports 키워드를 사용하여 설정할 수 있습니다.

module com.example.moduleA {
    exports com.example.packageA;
}

위 예제에서는 com.example.packageA 패키지를 com.example.moduleA 모듈 외부로 공개합니다.

또한, requires 키워드를 사용하여 다른 모듈을 이 모듈이 사용하도록 지정할 수도 있습니다.

module com.example.moduleA {
    requires com.example.moduleB;
}

위 예제에서는 com.example.moduleA 모듈이 com.example.moduleB 모듈을 사용한다고 명시합니다.

정리

Jigsaw 모듈 시스템에서는 접근 제어와 가시성 설정을 통해 모듈간의 관계와 접근을 제어할 수 있습니다. 적절한 접근 제어와 가시성 설정을 통해 모듈 시스템의 장점을 최대한 활용할 수 있으며, 유연하고 견고한 애플리케이션을 개발할 수 있습니다.

더 자세한 내용은 공식 Java 문서를 참조하시기 바랍니다.