- 博客(13)
- 收藏
- 关注
原创 jdk17 新特性
开发效率:文本块、记录类、模式匹配等语法简化减少模板代码性能:ZGC/Shenandoah GC 大幅降低停顿时间,适合大内存应用安全性:强封装内部 API,默认启用强加密可维护性:密封类、模块化系统提升代码结构清晰度工具链:JShell、jpackage 等工具提升开发与分发体验对于开发者,优先掌握文本块、记录类、instanceof 模式匹配、不可变集合工厂方法等高频使用特性,可显著提升日常开发效率。
2025-09-07 16:40:36
1278
原创 大文件的上传和下载
上传:拆分文件→多线程传分片→服务端合并;下载:多线程请求分片→本地合并;断点续传:记录进度,跳过已完成部分。掌握这些基础后,可进一步学习成熟框架(如阿里云OSS的分片上传SDK、Apache Commons Net),它们已封装好复杂逻辑,实际项目中建议优先使用。
2025-09-07 16:00:46
588
原创 Java 序列化与反序列化详解
/ 不会被默认序列化// 自定义序列化// 先执行默认序列化// 手动处理transient字段(可以加密后再保存)// 自定义反序列化// 先执行默认反序列化// 手动恢复transient字段(解密)// 加密方法(示例)// 实际项目中使用更安全的加密算法// 解密方法(示例)// 其他代码...序列化是将对象转为字节序列,反序列化是其逆过程实现Serializable接口是基础要求显式声明serialVersionUID可以避免版本问题。
2025-09-07 15:56:17
548
原创 Java 泛型
泛型允许在类、接口和方法中使用类型参数类型参数可以通过边界(extends/super)进行限制通配符(?)用于处理未知类型,遵循 PECS 原则泛型在运行时会被擦除,带来一些使用限制泛型不具备协变性,需要注意继承关系合理使用泛型可以编写更安全、更灵活、更易维护的代码,是 Java 开发中的必备知识。
2025-09-03 19:49:21
915
原创 【Java 线程安全、线程池与并发工具详解】
Java 线程模型是并发编程的核心,理解进程与线程的区别、掌握线程安全保障机制(锁、原子类、)、合理使用线程池和并发集合,是编写高效、安全的多线程程序的基础。实际开发中需根据业务场景选择合适的工具(如 IO 密集型任务用较大线程池,CPU 密集型任务用较小线程池),并警惕死锁、内存可见性等问题。
2025-09-02 21:02:32
911
原创 Java 线程核心概念与生命周期详解
状态名称核心含义NEW(新建)线程对象已创建,但未调用start()方法,未与操作系统底层线程关联RUNNABLE(可运行)调用start()后,线程处于“就绪”或“运行”状态:- 就绪:等待 CPU 调度- 运行:正在占用 CPU 执行任务BLOCKED(阻塞)线程因竞争同步锁(如)被阻塞,等待锁释放WAITING(等待)线程通过wait()join()进入无时限等待,需其他线程唤醒TIMED_WAITING(计时等待)线程通过wait(long)join(long)进入有时限等待,超时后自动唤醒。
2025-09-02 20:59:31
642
原创 linux 常用命令
Linux 命令是操作 Linux 系统的核心工具,以下按等常用场景分类,整理高频命令及用法(基于 CentOS/Ubuntu 通用环境)。
2025-09-01 20:31:10
1114
原创 Java内存模型
JMM是Java并发编程的“内存协议屏蔽硬件差异,保证跨平台一致性。通过volatile、synchronized、Happens-Before等机制解决可见性、原子性、有序性问题。让开发者无需深入底层(CPU缓存、指令重排),即可编写正确的多线程程序。理解JMM是掌握Java并发编程的前提,无论是使用volatile,还是JUC中的工具类(如Lock),其底层都依赖JMM的规则。
2025-08-31 19:00:19
1147
原创 Maven技术指南:从基础到实践应用
Maven是Apache旗下的Java项目自动化构建工具,通过标准化项目结构和依赖管理,解决项目构建过程中的编译、测试、打包、部署等流程自动化问题。统一项目结构:强制规范源代码、资源文件、测试用例的目录组织方式。依赖管理自动化:自动解析并下载项目依赖的jar包,避免手动管理依赖冲突。构建流程标准化:通过生命周期(Lifecycle)定义固定的构建阶段,确保团队协作一致性。
2025-06-15 20:31:13
910
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅