[Java] java.base module

Bam·2024년 3월 8일
0

Java

목록 보기
49/98
post-thumbnail

라이브러리와 모듈

라이브러리(library)는 프로그래밍에서 활용할 수 있는 특정 기능들을 모아둔 것을 말합니다. 자바에서는 클래스, 인터페이스를 모아놓은 것을 라이브러리라고 할 수 있죠. 기능들을 모아놨기 때문에 프로그래머는 사용법만 숙지하고 가져다 사용하면 되기에 코드를 빠르게 생산해낼 수 있다는 장점이 있습니다.

모듈(module)Java 9부터 지원하는 패키지 관리 기능이 포함된 라이브러리입니다. 모듈을 이용하면 라이브러리에서 사용하지 않는 특정 패키지들은 은닉할 수 있습니다. 그리고 module-info.java라는 파일에 의존 모듈을 작성하기 때문에 모듈 간의 의존 관계를 확인할 수 있는 특징도 있습니다.

자바에서는 라이브러리와 모듈을 JAR 파일(.jar)형태로 배포하고 사용합니다.


java.base 모듈

java.base 모듈은 모든 모듈이 의존하는 모듈입니다. 모듈을 가져다 사용할 때는 requires를 사용해서 알리는데, java.base 모듈은 알리지 않아도 사용할 수 있다는 특징이 있습니다.

java.base 모듈에 포함된 패키지로는 다음 표와 같은 것들이 있습니다. 물론 아래 표 외에도 많은 패키지들이 존재하지만, 표에 나온 패키지들은 정말 자주 사용되는 것들이니 한 번 즈음은 확인해봅시다.

패키지설명
java.lang자바의 기본 클래스들을 제공하는 패키지
java.util자료구조에 사용되는 클래스들을 제공하는 패키지
java.text숫자나 날짜 등의 데이터를 문자열로 만드는 format 클래스들을 제공하는 패키지
java.time날짜나 시간 조작에 사용되는 클래스들을 제공하는 패키지
java.io입출력 스트림 클래스들을 제공하는 패키지
java.nioBuffer나 새로 등장한 입출력 클래스들을 제공하는 패키지
java.net네트워크 통신에 사용되는 클래스들을 제공하는 패키지

이 중 java.lang은 그동안 계속해서 사용해왔던 익숙한 패키지이죠? 우리가 계속 사용했던 System, String, Exception 등의 클래스들이 여기에 포함되어있습니다.


java.lang 패키지

우리는 java.lang 패키지에 조금 더 주목을 해볼까 합니다. 자바의 기본 클래스이기 때문에 자바 프로그래밍을 위해서는 필수적으로 알아둬야할 사항이 많기 때문입니다.

java.lang 패키지는 자바 언어의 기본 클래스들을 제공하는 패키지입니다. 이 패키지는 import 명령 없이도 바로 사용할 수 있다는 것이 특징입니다.

java.lang 패키지의 대표적인 클래스들로는 Object, String, System, Math 등이 있습니다. 앞으로 몇 개의 포스트에 걸쳐서 이 패키지의 클래스를 알아보고 각 클래스의 핵심적인 멤버들을 알아보려고 합니다.

JAVA 17 API 문서

처음시작할 때 소개드렸었는데요. 앞으로 클래스를 소개하면서 모든 멤버들을 소개할 수도 없기도 하고, 더 자세하게 적혀있기도 하기에 함께 참고하면 훨씬 더 좋습니다.

https://docs.oracle.com/en/java/javase/17/docs/api/

0개의 댓글