상세 컨텐츠

본문 제목

#5 자바 표준 라이브러리

기초/IT 기본 지식

by 2^7 2024. 10. 7. 20:49

본문

▶ 자바 표준 라이브러리란?

  • 자바 개발 환경(JDK) 내에서 기본적으로 제공되는 라이브러리 모음
  • java.* or javax.* 패키지로 구성되어 있으며 다양한 기능을 제공
    • 데이터 구조(리스트, 셋, 맵 등)
    • 입출력 처리
    • 네트워킹
    • 스레드 처리
    • 날짜와 시간 처리
    • 파일 시스템 접근
    • GUI 개발

▶ 자바 표준 라이브러리의 장점

 

  • 풍부한 기능: 자바 표준 라이브러리는 기본적인 입출력 작업부터 고급 네트워크 및 데이터베이스 연동 기능까지 폭넓은 기능을 제공
  • 코드 재사용성: 표준 라이브러리를 사용하면, 이미 검증된 코드들을 재사용할 수 있어 개발자가 직접 복잡한 기능을 구현할 필요가 없음
  • 강력한 호환성: 자바 표준 라이브러리는 모든 자바 플랫폼에서 일관되게 동작하므로, 하나의 코드가 다양한 운영체제와 환경에서 실행될 수 있음

개발자가 손쉽게 강력한 기능을 사용할 수 있도록 돕는 중요한 도구로 데이터 구조, 네트워킹, 입출력 처리 등 다양한 분야에서 제공되는 라이브러리들은 개발 시간을 줄이고, 유지 보수성과 코드의 가독성을 높이는 데 기여하여 더욱 효율적인 개발을 할 수 있도록 함


 

▶ 주요 패키지

1. java.lang

자바 프로그램에서 기본적으로 포함되는 패키지로 import 선언 없이도 바로 사용이 가능

 

  • Object: 자바의 모든 클래스는 Object 클래스를 상속받음, 이 클래스는 모든 객체의 공통된 특성과 동작을 정의
  • String: 문자열을 다루는 클래스로 문자열은 자바에서 변경 불가능한(immutable) 객체로 처리됨
  • Math: 수학 계산을 위한 다양한 메서드를 제공 (ex. 삼각 함수, 로그, 제곱근 등)
  • System: 표준 입출력 및 환경 설정에 접근할 수 있게 해줌
  • Thread: 멀티스레드 프로그래밍을 지원하는 클래스

2. java.util

유틸리티 클래스들을 포함하고 있으며, 자주 사용되는 데이터 구조와 유용한 기능들을 제공

 

  • Collection Framework: 자바의 컬렉션 프레임워크는 데이터를 효율적으로 저장하고 관리할 수 있게 해주는 클래스 모음으로 대표적인 컬렉션 클래스에는 List, Set, Map 등이 있음
    • ArrayList: 가변 크기의 배열을 구현한 클래스
    • HashMap: 키와 값의 쌍으로 데이터를 저장하는 해시맵 클래스
  • Date & Calendar: 날짜와 시간 관련 작업을 처리하는 클래스
    • Date : 현재 날짜와 시간을 표현
    • Calendar : 날짜와 시간의 복잡한 계산을 처리 가능
  • Random: 난수 생성 기능을 제공
  • Scanner: 입력을 읽어들이기 위한 클래스로 콘솔에서 사용자 입력을 처리하거나 파일로부터 데이터를 읽을 수 있음

3. java.io

입출력 작업을 다루는 클래스들을 제공( 파일이나 네트워크 스트림을 통해 데이터를 읽고 쓸 수 있게 해 줌)

 

  • File: 파일 및 디렉토리에 대한 정보를 제공하는 클래스로 파일의 존재 여부 확인, 생성, 삭제 등의 작업을 수행
  • InputStream/OutputStream: 바이트 단위의 입력 및 출력 스트림을 다루는 추상 클래스
  • Reader/Writer: 문자 단위의 입력 및 출력을 처리하는 클래스

4. java.nio

(New Input/Output) 더 빠르고 비동기적인 입출력 작업을 가능하게 해주는 패키지로 네트워크 프로그래밍이나 대규모 파일 처리에서 사용

 

  • Buffer: 데이터를 일시적으로 저장하고, 읽고 쓰는 작업을 효율적으로 처리할 수 있게 해줌
  • FileChannel: 파일에서 데이터를 읽고 쓰기 위한 채널을 제공하며 FileChannel을 통해 더 효율적인 파일 작업이 가능함.

5. java.net

네트워크 프로그래밍을 위한 클래스를 제공하여 TCP, UDP 등 다양한 네트워크 프로토콜을 사용하여 데이터 통신을 처리 할 수 있게 함

 

  • Socket: TCP/IP 네트워크 통신을 위한 소켓 클래스
  • ServerSocket: 서버 측에서 소켓을 열어 클라이언트와 통신을 할 수 있게 해줌
  • URL: 웹 주소(URL)를 다루기 위한 클래스로 URL을 통해 네트워크 상의 리소스에 접근할 수 있음

6. java.sql

데이터베이스와 연동하여 SQL 쿼리를 실행하고 데이터를 처리할 수 있도록 지원

 

  • Connection: 데이터베이스 연결을 표현하는 인터페이스
  • Statement: SQL 쿼리를 실행하는 인터페이스
  • ResultSet: SQL 쿼리의 결과를 저장하고, 그 결과를 처리할 수 있는 클래스

7. java.swing

그래픽 사용자 인터페이스(GUI)를 작성할 수 있도록 도와주는 라이브러리

 

  • JFrame: 애플리케이션의 윈도우를 만드는 데 사용되는 클래스
  • JButton: 클릭 가능한 버튼을 만드는 클래스
  • JLabel: 텍스트나 이미지를 표시하는 레이블을 만드는 클래스

 

 

 

 

 

 

 

728x90

'기초 > IT 기본 지식' 카테고리의 다른 글

#7 MVC 패턴  (0) 2024.11.04
#6 자바(Java) 프레임워크  (0) 2024.10.14
#4. 인터프리터 언어  (1) 2024.08.19
#3. 인공지능, 머신러닝, 딥러닝  (0) 2024.06.23
#2 빅데이터 개요  (0) 2024.06.23

관련글 더보기