반응형
Java API는 자바 표준 라이브러리로, Java 프로그램을 개발할 때 자주 사용하는 클래스, 인터페이스, 메서드들의 집합입니다. 대부분의 API들은 java.* 또는 javax.* 패키지로 제공됩니다.
Java Platform SE 8
docs.oracle.com
1. java.lang 패키지
• 자동으로 import 되는 기본 패키지
• 핵심 클래스 포함.
클래스/인터페이스 | 설명 |
Object | 모든 클래스의 최상위 클래스 |
String | 문자열 처리 |
Math | 수학 연산 지원 (ex: abs, pow, sqrt 등) |
Wrapper | 클래스 기본형(int, double 등)을 객체로 감쌈 (Integer, Double 등) |
System | 표준 입출력, JVM 관련 기능 |
Thread | 멀티쓰레드 처리 |
2. java.util 패키지
• 자료구조, 날짜, 유틸리티 기능 제공
클래스/인터페이스 | 설명 |
ArrayList, LinkedList | 리스트 자료구조 |
HashMap, HashSet | 맵, 집합 자료구조 |
Collections | 컬렉션 관련 유틸리티 메서드 |
Date, Calendar | 날짜 및 시간 처리 |
Random | 난수 생성 |
Scanner | 입력 처리 (콘솔 입력 등) |
3. java.io 패키지
• 입출력 (I/O) 처리
클래스 | 설명 |
File | 파일 및 디렉터리 정보 처리 |
InputStream, OutputStream | 바이트 기반 입출력 |
Reader, Writer | 문자 기반 입출력 |
BufferedReader, BufferedWriter | 버퍼 사용하여 성능 향상 |
ObjectInputStream, ObjectOutputStream | 객체 직렬화/역직렬화 |
4. java.nio 패키지
• Non-blocking I/O 지원 (고성능 I/O)
• Channel, Buffer 등 기반으로 동작 → 대용량 처리에 적합.
5. java.net 패키지
• 네트워크 프로그래밍 지원
클래스 | 설명 |
Socket, ServerSocket | TCP/IP 소켓 통신 |
URL, URLConnection | HTTP, FTP 등 URL 처리 |
InetAddress | IP 주소 관련 기능 |
6. java.sql 패키지
• JDBC 관련 API
• 데이터베이스 연결, 쿼리 처리 가능.
클래스/인터페이스 | 설명 |
Connection | DB 연결 관리 |
Statement, PreparedStatement | SQL 실행 |
ResultSet | SQL 결과셋 처리 |
DriverManager | JDBC 드라이버 관리 |
JDBC란 무엇인가?
JDBC(Java Database Connectivity)는 Java에서 데이터베이스와 연결하여 데이터를 조회, 삽입, 수정, 삭제할 수 있도록 도와주는 Java의 표준 API입니다. 📌 JDBC란?JDBC는 Java 프로그램과 데이터베이스(DBMS)
jyhan0625.tistory.com
7. javax.swing 패키지
• GUI (그래픽 사용자 인터페이스)
• 버튼, 창, 패널 등 UI 구성 요소.
클래스 | 설명 |
JFrame | 윈도우 창 생성 |
JButton, JLabel | 버튼, 라벨 |
JPanel | 패널 구성 |
8. java.time 패키지 (Java 8 이상)
• 날짜와 시간의 현대적 API
클래스 | 설명 |
LocalDate, LocalTime, LocalDateTime | 날짜/시간 표현 |
Period, Duration | 기간 및 시간 차이 계산 |
DateTimeFormatter | 날짜 포맷 지정 |
9. java.security 패키지
• 암호화, 해시, 인증 관련 API
• MessageDigest, KeyPair, Signature 등 제공.
반응형
'JAVA' 카테고리의 다른 글
[JAVA] next(), nextLine(), nextInt()의 차이점과 주의할 점 (0) | 2025.03.24 |
---|---|
[JAVA] 문자열 비교 총정리 (0) | 2025.03.24 |
Java에서 Maven을 써야 할까? Gradle을 써야 할까? (0) | 2025.03.19 |
Maven이란 무엇인가? (0) | 2025.03.17 |
[JAVA] Annotation(애너테이션) vs Method(메서드) (0) | 2025.02.06 |