본문 바로가기
Language/Java

[Java API] java.lang 패키지 주요 클래스와 인터페이스 정리

by 클레어몬트 2024. 8. 20.

자바가 기본으로 제공하는 라이브러리(클래스 모음) 중에 가장 기본이 되는 것이 바로 java.lang 패키지이다. 자바 언어를 이루는 가장 기본이 되는 클래스들을 보관하는 패키지이다.

java.lang 패키지는 모든 자바 애플리케이션에 자동으로 import된다따라서 import를 생략해도 사용할 수 있다

System.out.println() 함수를 그냥 바로 사용할 수 있는 것도 이 이유이다

 

 

[java.lang 패키지의 주요 클래스]
- Object 클래스: 모든 자바 객체의 최상위 부모 클래스


- String 클래스: 문자열을 다루기 위한 클래스, String 객체는 불변(immutable)이며, 생성된 이후에는 변경 x

- StringBuilder & StringBuffer 클래스: 변경 가능한 문자열을 다룰 때 사용


- Integer, Long, Double, ... 클래스: 래퍼 타입, 기본형 데이터 타입을 객체로 다룰 수 있게 해주는 래퍼 클래스

 

- Class 클래스: 클래스 메타 정보 - 특정 클래스의 정보를 런타임에 동적으로 얻거나, 객체를 생성할 때 사용


- System 클래스 : 시스템과 관련된 기본 기능들을 제공

 

- Math 클래스: 수학 연산을 위한 정적 메서드를 제공

- StrictMath 클래스: 특정 계산을 보다 엄격하게 수행

 

- Thread 클래스: Java에서 스레드를 생성하고 제어하기 위한 클래스, 멀티스레드 프로그램을 작성할 때 사용

- ThreadLocal 클래스: 스레드마다 독립적인 변수를 가질 수 있게 하는 클래스, 여러 스레드에서 독립적으로 값을 저장하고 읽을 수 있다

- Runnable 클래스: 스레드에서 실행할 작업을 정의하기 위한 인터페이스

 

- Exception & RuntimeException 클래스: 예외 처리를 위한 기본 클래스, 모든 예외는 Throwable 클래스를 상속받는다

 

 

 

[java.lang 패키지의 주요 인터페이스]

- Comparable<T> 인터페이스: 객체를 정렬할 수 있도록 정의하는 인터페이스

 

- CharSequence 인터페이스: String, StringBuffer, StringBuilder와 같이 일련의 문자를 다루는 모든 클래스에서 구현할 수 있는 인터페이스