Java 常用类库
Java 提供了丰富的类库,以下是一些最常用的类。
1. 核心 Java 类库
Java 标准库提供了丰富的内置类库,以下是常用的一些核心类库:
类别
类库名称
主要功能
集合框架
java.util.ArrayList
动态数组实现
java.util.LinkedList
双向链表实现
java.util.HashMap
哈希表实现的 Map
java.util.Vector
实现了一个动态数组
java.util.HashSet
基于哈希表的 Set
java.util.Scanner
获取用户的输入
java.util.regex.Pattern
正则表达式
java.util.regex.Macher
正则表达式
IO/NIO
java.io.File
文件和目录操作
java.nio.file.Files
文件操作工具类
java.io.InputStream
字节流基础类
java.io.OutputStream
字节流基础类
多线程
java.lang.Thread
线程操作类
java.util.concurrent.ExecutorService
线程池管理
日期时间
java.time.LocalDate
日期处理
java.time.LocalDateTime
日期时间处理
java.time.ZonedDateTime
带有时区的日期和时间
java.util.Date
当前的日期
java.text.SimpleDateFormat
时间日期格式化
java.util.Calendar
处理时间日期
java.util.GregorianCalendar
实现了公历日历
java.time.Instant
表示时间线上的一个瞬时点
java.time.ChronoUnit
用于测量时间的标准单位
java.time.Period
表示两个日期之间的时间间隔
java.time.Duration
表示基于时间的时段(小时、分钟、秒、纳秒)
网络编程
java.net.URL
URL 处理
java.net.Socket
套接字编程
2. 常用第三方库
以下是 Java 生态系统中广泛使用的第三方库:
类别
库名称
主要功能
官方网站
JSON 处理
Jackson
JSON 序列化/反序列化
https://github.com/FasterXML/jackson
Gson
Google 的 JSON 库
https://github.com/google/gson
单元测试
JUnit
Java 单元测试框架
https://junit.org/junit5/
Mockito
Mock 测试框架
https://site.mockito.org/
日志记录
Log4j
日志记录框架
https://logging.apache.org/log4j/
SLF4J
日志门面框架
https://www.slf4j.org/
Web 开发
Spring Framework
企业级应用框架
https://spring.io/projects/spring-framework
Spring Boot
快速应用开发框架
https://spring.io/projects/spring-boot
数据库
Hibernate
ORM 框架
https://hibernate.org/
MyBatis
SQL 映射框架
https://mybatis.org/mybatis-3/
构建工具
Maven
项目构建和依赖管理
https://maven.apache.org/
Gradle
灵活构建工具
https://gradle.org/
3. 如何选择适合的类库
3.1 评估标准
功能需求:首先明确项目需要什么功能
社区支持:活跃的社区意味着更好的支持和文档
性能表现:对于性能敏感的应用需要特别考虑
学习曲线:考虑团队的学习成本
维护状态:检查项目是否还在积极维护
3.2 版本选择建议
优先选择 LTS (长期支持) 版本
避免使用已经停止维护的版本
新项目可以考虑较新的稳定版本
4. 使用示例
4.1 使用 Jackson 处理 JSON
实例
import com.fasterxml.jackson.databind.ObjectMapper;
public class JsonExample {
public static void main(String[] args) {
ObjectMapper mapper = new ObjectMapper();
try {
// 对象转 JSON
String json = mapper.writeValueAsString(new User("张三", 25));
System.out.println(json);
// JSON 转对象
User user = mapper.readValue(json, User.class);
System.out.println(user);
} catch (Exception e) {
e.printStackTrace();
}
}
}
4.2 使用 JUnit 进行单元测试
实例
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
class CalculatorTest {
@Test
void testAdd() {
Calculator calc = new Calculator();
assertEquals(5, calc.add(2, 3));
}
}