HoRain云--Java常用类库终极指南

发布时间:2026/7/10 17:19:13

HoRain云--Java常用类库终极指南
HoRain云小助手个人主页 个人专栏: 《Linux 系列教程》《c语言教程》⛺️生活的理想就是为了理想的生活!⛳️ 推荐前些天发现了一个超棒的服务器购买网站性价比超高大内存超划算忍不住分享一下给大家。点击跳转到网站。专栏介绍专栏名称专栏介绍《C语言》本专栏主要撰写C干货内容和编程技巧让大家从底层了解C把更多的知识由抽象到简单通俗易懂。《网络协议》本专栏主要是注重从底层来给大家一步步剖析网络协议的奥秘一起解密网络协议在运行中协议的基本运行机制《docker容器精解篇》全面深入解析 docker 容器从基础到进阶涵盖原理、操作、实践案例助您精通 docker。《linux系列》本专栏主要撰写Linux干货内容从基础到进阶知识由抽象到简单通俗易懂帮你从新手小白到扫地僧。《python 系列》本专栏着重撰写Python相关的干货内容与编程技巧助力大家从底层去认识Python将更多复杂的知识由抽象转化为简单易懂的内容。《试题库》本专栏主要是发布一些考试和练习题库涵盖软考、HCIE、HRCE、CCNA等目录⛳️ 推荐专栏介绍一、java.lang—— 唯一不用 import 的包二、java.util—— 日常工具大本营三、java.iovs java.nio—— 文件 流四、java.net—— 网络五、java.timeJDK 8 引入—— 日期时间就它了六、java.math—— 精确计算七、java.util.concurrent—— 并发工具箱八、java.sql—— JDBC老但还在九、JDK 8 / 11 / 17 新增 —— 版本感知速览十、第三方事实上常用三件套Java 常用类库其实就是写 Java 每天离不开的那几个java.*包按使用频率排下来基本就这八块lang → util → io/nio → net → time → math → concurrent → sql。每包 headline 类 一句定位再补 JDK 8/11/17 新增的别再用老 API提醒最后带一句第三方三件套。一、java.lang—— 唯一不用 import 的包自动导入所有类都能直接写名字。类 / 接口干嘛的Object所有类的根equals/hashCode/toString/wait/notify都在这String/StringBuilder/StringBuffer字符串StringBuilder单线程快StringBuffer线程安全慢包装类Integer/Long/Double/Boolean基本类型 → 对象缓存-128~127Integer.valueOf(1)比new好Math/StrictMathsqrt/min/max/random()Systemout/err/currentTimeMillis()/getenv()/exit()Thread/Runnable/ThreadLocal最原始的并发原语现在新代码优先java.util.concurrentThrowable/Exception/RuntimeException异常体系根Comparable/Iterable/AutoCloseablefor-each、泛型、try-with-resources 的语言级依赖 JDK 8 起String加了join()JDK 11 加repeat(int)/strip()/lines()比trim()智能strip()认 Unicode 空白。二、java.util—— 日常工具大本营这块最大拆成几小块看 集合框架面试 80% 考点在这接口Collection/List/Set/Map/Queue/Deque实现ArrayList数组查快改慢、LinkedList链表头尾操作快HashMap数组链表红黑树无序、LinkedHashMap保插入序、TreeMap红黑树按 key 排序HashSet/TreeSetArrayDeque栈/队列首选比Stack类好工具类Arrays数组操作、Collections排序/unmodifiableList等、ObjectsrequireNonNull、哈希✅ JDK 9List.of(1,2,3)/Set.of()/Map.of()创建不可变集合比Collections.unmodifiableList(new ArrayList(...))简洁也省内存。⏱ 老日期别用了Date/Calendar/SimpleDateFormat—— 非线程安全、设计烂JDK 8 起被java.time替代。 其他小工具Random、Scanner、UUID、regex.Pattern子包重点两个java.util.function——Function/Predicate/Supplier/ConsumerLambda Stream 的配套接口java.util.stream—— Stream APIJDK 8 引入filter/map/reduce流水线三、java.iovsjava.nio—— 文件 流java.io传统阻塞 I/O还在大量用字节流InputStream/OutputStream→FileInputStream/FileOutputStream/BufferedInputStream字符流Reader/Writer→FileReader/BufferedReader/PrintWriterFile—— 老的文件抽象已被Path替代序列化那套Serializable/ObjectInputStream/ObjectOutputStream上一轮聊过java.nioJDK 1.4新代码首选Path/Paths/Files——Files.readString(Path.of(a.txt))一行读文件JDK 11 起ByteBuffer/Channel—— 非阻塞 零拷贝高并发/大文件才直接摸StandardOpenOption—— 枚举控制读写追加等 新代码读文件Files.readString(Path.of(...))或Files.lines()别再BufferedReader try-catch一堆样板了。四、java.net—— 网络老三样URL/URI/InetAddress、Socket/ServerSocketTCP、DatagramSocketUDPHttpURLConnection已过时JDK 11 起用java.net.http.HttpClient支持 HTTP/2 异步 WebSocket链式调用String body HttpClient.newHttpClient() .send(HttpRequest.newBuilder(URI.create(https://example.com)).build(), HttpResponse.BodyHandlers.ofString()) .body();五、java.timeJDK 8 引入—— 日期时间就它了全面替代Date/Calendar全部不可变 线程安全类用途LocalDate/LocalTime/LocalDateTime不带时区的日期时间ZonedDateTime/ZoneId带时区Instant时间轴上的一个点存数据库用这个Duration秒/纳秒 /Period年/月/日时间间隔DateTimeFormatter解析/格式化替代SimpleDateFormat// 老写法别再写 Date d new Date(); SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd); // 新写法 LocalDate today LocalDate.now(); String s DateTimeFormatter.ofPattern(yyyy-MM-dd).format(today);六、java.math—— 精确计算BigInteger—— 任意精度整数不会溢出BigDecimal—— 精确小数钱必须用这个配RoundingModeBigDecimal a new BigDecimal(0.1); BigDecimal b new BigDecimal(0.2); System.out.println(a.add(b)); // 0.3double 做不到七、java.util.concurrent—— 并发工具箱老Thread/Runnable太原始企业代码基本走这线程池ExecutorService/ThreadPoolExecutor/Executors高级CompletableFuture异步编排类似 JS Promise并发容器ConcurrentHashMap/CopyOnWriteArrayList锁 原子ReentrantLock/AtomicInteger/CountDownLatch/CyclicBarrier/Semaphore JDK 21 虚拟线程Thread.ofVirtual()出来后很多线程池 阻塞 IO场景可以换成虚拟线程吞吐量量级提升。八、java.sql—— JDBC老但还在DriverManager/Connection/Statement/PreparedStatement/ResultSet现在新项目基本走 MyBatis / JPA / Spring Data JDBC 了裸 JDBC 只在内嵌工具或教学里见。九、JDK 8 / 11 / 17 新增 —— 版本感知速览面试常问你用 JDK 8 但知道 11/17 加了啥吗这几样必须知道JDK 8里程碑Lambda、StreamAPI、Optional、java.time、接口 default 方法、Nashorn已删JDK 11LTSvar局部类型推断、HttpClient、String.repeat/strip/lines()、Files.readString/writeString()、删java.xml.ws/java.corba、弃用 AppletJDK 17LTSrecord数据载体替代 Lombok DTO、密封类sealed、instanceof模式匹配、switch表达式增强JDK 21最新 LTS虚拟线程、SequencedCollection、String模板预览十、第三方事实上常用三件套标准库之外实际项目几乎必引的日志SLF4JLogback门面 实现别直接用log4j老版有 CVEJSONJacksonObjectMapper或GsonFastJSON 老版漏洞多单元测试JUnit 5Test/Assertions顺带一提Lombok在 DTO 场景被 JDK 17record抢了不少地盘但Builder/Slf4j还是香。按包记就一句话lang 是根util 是日常io/nio 管文件net 管网络time 管日期math 管精确数concurrent 管并发sql 管数据库——八块覆盖 90% 日常编码。如果想再往下挖可以挑Stream API 的并行流坑、ConcurrentHashMap1.8 为什么放弃分段锁、或者CompletableFuture异步编排——都是面试能从常用类库一路问到源码的延伸点。❤️❤️❤️本人水平有限如有纰漏欢迎各位大佬评论批评指正如果觉得这篇文对你有帮助的话也请给个点赞、收藏下吧非常感谢! Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧

相关新闻

HoRain云--Java9核心特性全解析

HoRain云--Java9核心特性全解析

2026/7/11 2:50:37

🎬 HoRain云小助手:个人主页 🔥 个人专栏: 《Linux 系列教程》《c语言教程》 ⛺️生活的理想,就是为了理想的生活! ⛳️ 推荐 前些天发现了一个超棒的服务器购买网站,性价比超高,大内存超划算!…

倾向得分匹配PSM | 双重差分DID | AB Test对比

倾向得分匹配PSM | 双重差分DID | AB Test对比

2026/7/10 14:05:37

倾向得分匹配(PSM)PSM能解决什么问题?在一场促销活动后,业务发现领券的的人均下单金额120元,没有领券的人均下单金额80元。是因为发放消费券使得下单金额提升的吗?—— 不一定,因为领券的人群本…

Python面向对象进阶:__slots__、@property、枚举类、元类到底是什么?一篇彻底讲明白!(小白必看) (六.2)

Python面向对象进阶:__slots__、@property、枚举类、元类到底是什么?一篇彻底讲明白!(小白必看) (六.2)

2026/7/10 23:36:34

一、多重继承:一个类为什么可以有多个"爸爸"?上一篇文章,我们学习了继承。例如:class Animal:def eat(self):print("动物都会吃东西")创建狗类:class Dog(Animal):pass这时候:dog Dog…

MKV58微控制器与压电蜂鸣器的嵌入式音频方案

MKV58微控制器与压电蜂鸣器的嵌入式音频方案

2026/7/11 2:52:11

1. 项目概述:为项目添加互动声音元素的硬件方案在当今的嵌入式系统和物联网项目中,声音交互已成为提升用户体验的关键要素。MKV58F1M0VLQ24微控制器与CMT-8540S-SMT压电蜂鸣器的组合,为开发者提供了一套可靠且高效的音频解决方案。MKV58F1M0V…

网口误码、过不了测试,可能是PCB布局的锅:单口RJ45布局要点

网口误码、过不了测试,可能是PCB布局的锅:单口RJ45布局要点

2026/7/11 2:52:11

参数都选对了,网口还是误码、EMC 过不了——十有八九是 PCB 布局的锅。单口 11 RJ45 布局相对简单,但差分对等长/阻抗、变压器紧贴 RJ45、屏蔽地可靠接地这三条铁律必须守,PHY→网络变压器→RJ45 要就近短直排。可对照沃虎 11 单口 SYT52A118…

Cocos Creator Android打包:NDK版本选择与环境配置避坑指南

Cocos Creator Android打包:NDK版本选择与环境配置避坑指南

2026/7/11 2:52:11

1. 项目概述:为什么打包APK总在NDK上栽跟头? 如果你用Cocos Creator 3.x开发过游戏,并且尝试过打包Android APK,那你大概率在某个深夜,对着屏幕上那一行行晦涩难懂的构建错误信息怀疑过人生。尤其是当错误信息里出现“…

1.Python中的分支与循环

1.Python中的分支与循环

2026/7/11 2:52:11

分支单分支根据条件来选择是否执行条件满足则执行例如if 5>3: print(3)结果双分支二选一,其中两个分支中还可以包含分支两个条件选择一个执行例如num 4 if num > 5:if num > 8:print("1")else: # 隐含8>num>5print("2") else: …

告别穿戴与盲区:AI视频孪生穿透集装箱阵列,解锁海关穿透式透明管理 技术方案白皮书

告别穿戴与盲区:AI视频孪生穿透集装箱阵列,解锁海关穿透式透明管理 技术方案白皮书

2026/7/11 2:52:11

告别穿戴与盲区:AI视频孪生穿透集装箱阵列,解锁海关穿透式透明管理技术方案白皮书出品单位:镜像视界浙江科技有限公司 资质背书:国家十四五重点课题口岸时空智能监管专项、镜像视界浙江普陀时空大数据应用技术联合研究院联合攻关、…

MySQL监控别再手动配:用Shell脚本把exporter部署流程标准化

MySQL监控别再手动配:用Shell脚本把exporter部署流程标准化

2026/7/11 2:42:11

前言 部署mysql_exporter本身不算复杂,但真正让人头疼的是重复。每换一台MySQL服务器,就要重新下载程序、创建监控用户、授权权限、写配置文件、注册systemd服务,再检查端口和Prometheus抓取状态。 如果只是单机测试,手动操作还…

解锁AMD Ryzen处理器深层性能:SMU Debug Tool完全指南

解锁AMD Ryzen处理器深层性能:SMU Debug Tool完全指南

2026/7/10 22:32:48

解锁AMD Ryzen处理器深层性能:SMU Debug Tool完全指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https://gi…

6个月转型AI工程师:实战路径与核心技能

6个月转型AI工程师:实战路径与核心技能

2026/7/9 18:28:30

1. 项目概述:6个月转型AI工程师的可行性路径在2023年大模型技术爆发的背景下,AI工程师岗位需求同比增长217%(LinkedIn数据)。不同于传统算法工程师需要3-5年培养周期,现代AI工程师更侧重工程化落地能力。我在硅谷科技公…

YOLOv5模型剪枝与量化实战:边缘设备部署优化

YOLOv5模型剪枝与量化实战:边缘设备部署优化

2026/7/10 6:57:56

1. 项目背景与核心价值在计算机视觉领域,YOLOv5因其出色的实时检测性能成为工业界宠儿。但当我们尝试将其部署到边缘设备(如树莓派、Jetson Nano或手机终端)时,立刻会遇到两个致命问题:模型体积庞大(原始YO…

WechatDecrypt技术解析:深入理解微信数据库AES-256-CBC解密机制

WechatDecrypt技术解析:深入理解微信数据库AES-256-CBC解密机制

2026/7/11 0:02:03

WechatDecrypt技术解析:深入理解微信数据库AES-256-CBC解密机制 【免费下载链接】WechatDecrypt 微信消息解密工具 项目地址: https://gitcode.com/gh_mirrors/we/WechatDecrypt 在数字隐私日益重要的今天,微信聊天记录作为个人数字资产的重要组成…

5分钟搞定Kodi字幕难题:智能字幕插件让你追剧无忧 [特殊字符]

5分钟搞定Kodi字幕难题:智能字幕插件让你追剧无忧 [特殊字符]

2026/7/11 0:02:03

5分钟搞定Kodi字幕难题:智能字幕插件让你追剧无忧 🎬 【免费下载链接】zimuku_for_kodi Kodi 插件,用于从「字幕库」网站下载字幕 项目地址: https://gitcode.com/gh_mirrors/zi/zimuku_for_kodi 还记得那个深夜吗?你刚下载…

PostgreSQL 备份与恢复实战:从 pg_dump 到时间点恢复的生产级方案

PostgreSQL 备份与恢复实战:从 pg_dump 到时间点恢复的生产级方案

2026/7/11 0:02:03

PostgreSQL 备份与恢复实战:从 pg_dump 到时间点恢复的生产级方案 一、数据库备份最容易被忽略的问题,不是「有没有做备份」,而是「备份能不能恢复、恢复要多久、以及恢复后的数据对不对」 很多团队做数据库备份的方式是「写个 cron job&am…