java
文章平均质量分 93
liulanba
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
八股取士--JVM
JVM 核心概念摘要 内存结构与数据区 JVM运行时数据区分为5大核心部分:程序计数器(线程私有)、虚拟机栈(栈帧存储)、本地方法栈、Java堆(对象实例存储)和方法区(类元信息)。其中堆内存又细分为新生代(Eden+Survivor)和老年代,采用分代设计提高GC效率。 关键区别对比 堆vs方法区:堆存储对象实例,方法区存储类元数据;两者都线程共享但回收策略不同 栈vs堆:栈存储基本类型和引用(线程私有/快速访问),堆存储对象实例(线程共享/GC主要区域) 分代设计:基于对象生命周期特性,新生代用复制算法原创 2025-08-26 00:38:11 · 468 阅读 · 0 评论 -
Java 线程安全从入门到精通:实现方式、适用场景与优缺点(实战指南)
Java线程安全实现方式全面解析 摘要:本文系统介绍Java中线程安全的实现方式,包括不可变对象、synchronized、显式锁、volatile、原子类、并发集合等8种方法。通过对比分析各方式的优缺点,指出适用场景:不可变对象适合值类配置,synchronized适合小规模并发,原子类适合计数器,并发集合适合共享缓存等。文章还提供线程安全计数器和线程池任务协调两个典型示例,展示AtomicLong与LongAdder的性能差异,以及CountDownLatch的实际应用。最后给出最佳实践建议,如读多写少原创 2025-08-26 00:19:42 · 783 阅读 · 0 评论 -
Java 并发控制从入门到精通:实现方式、适用场景与优缺点
本文系统介绍了Java并发编程的核心知识与实践指南。首先从并发问题的三大本质(可见性、原子性、有序性)切入,解析了Java内存模型(JMM)和happens-before规则。然后详细比较了各种同步机制:synchronized关键字、Lock家族(ReentrantLock/ReadWriteLock/StampedLock)、条件队列(wait/notify/Condition/LockSupport)等。接着深入讲解了AQS同步器及其衍生工具(Semaphore/CountDownLatch等)、原子原创 2025-08-26 00:16:02 · 400 阅读 · 0 评论 -
MyBatis 从入门到精通:一篇就够的实战指南(Java)
本文是一篇全面系统的MyBatis实战指南,从基础概念到高级特性完整覆盖。主要内容包括:MyBatis核心优势(SQL自由、适度ORM、可扩展性)、与JPA的适用场景对比、Spring Boot快速集成指南(含完整代码示例)、核心运行机制解析、动态SQL与类型处理器等高级特性、性能调优与缓存策略、插件开发与代码生成等扩展能力,最后提供常见问题排查、工程实践建议和面试题解析。该教程适合各阶段Java开发者,既能帮助新手快速上手,也能满足进阶者深入掌握MyBatis的需求。原创 2025-08-26 00:04:14 · 486 阅读 · 0 评论 -
Spring Boot 深度解析:从原理到实践
Spring Boot核心解析与实战指南 Spring Boot作为Spring生态的革命性框架,通过约定优于配置理念显著提升开发效率。其核心架构包含四大组件:Starter依赖实现自动版本管理、AutoConfiguration机制实现智能装配、Actuator提供生产级监控、内嵌容器简化部署。自动配置通过@Conditional系列注解和spring.factories实现条件化Bean注册,典型如DataSourceAutoConfiguration。Starter机制通过聚合依赖(如spring-b原创 2025-08-14 12:42:52 · 809 阅读 · 0 评论 -
java-JVM详解
JVM 核心解析摘要 JVM(Java 虚拟机)是执行 Java 字节码的虚拟计算机,实现"一次编写,到处运行"的跨平台能力。其核心架构包含类加载子系统、运行时数据区(堆、方法区、栈等)和执行引擎(解释器/JIT 编译器)。JVM 通过自动内存管理(垃圾回收)保障代码安全,支持即时编译优化提升性能。内存分为新生代(Eden/Survivor)和老年代,采用分代收集算法。主流垃圾收集器包括 G1(JDK9+默认)和低延迟的 ZGC。JVM 通过将字节码转换为平台特定机器码实现跨平台,开发者原创 2025-08-14 12:39:24 · 1107 阅读 · 0 评论 -
八股取士--java
Java基础与面向对象编程摘要 基础部分 Java包含8种基本数据类型,支持自动装箱/拆箱。String不可变,StringBuilder可变且高效。equals()和hashCode()需保持一致性,线程创建可通过Thread或Runnable实现。类加载器分层次,可自定义;static关键字用于类级成员。异常分检查/非检查型,finally通常执行,泛型提供类型安全。 面向对象 OOP四大特性:封装(隐藏细节)、继承(代码复用)、多态(接口统一)、抽象(提取共性)。Java支持单继承多接口,多态包括编译原创 2025-08-02 11:25:22 · 978 阅读 · 0 评论 -
Java泛型
本文深入解析了Java泛型的核心机制与应用实践。泛型通过类型安全检测、消除强制转换实现编译时类型安全,基于类型擦除机制在运行时转换为原始类型,并通过桥接方法解决多态问题。文章详细演示了类型擦除规则和反射验证实验,揭示泛型在字节码层面的实现原理。同时分析了泛型的优势(代码复用、API清晰化)与局限性(类型擦除问题、继承限制等),并提供了通过反射获取泛型信息的完整实践方案,包括类继承、字段、方法等场景的类型参数解析技术。原创 2025-07-23 22:39:28 · 779 阅读 · 0 评论 -
Java反射机制
Java反射机制通过JVM类加载和Class对象实现类结构的动态访问,核心API包括获取Class对象、操作构造器/方法/字段等。反射流程:加载.class文件→创建Class对象→获取类成员→突破访问限制→执行操作。关键点:1)三种获取Class对象方式;2)通过setAccessible(true)访问私有成员;3)Method.invoke()调用方法。示例展示了动态ORM实现,包括从结果集创建对象、处理类型转换、调用私有方法等场景,体现了反射的灵活性和动态特性,但也需注意性能开销和安全性问题。原创 2025-07-23 22:33:38 · 855 阅读 · 0 评论 -
Java AOP编程
AOP摘要:切面编程(AOP)通过模块化处理横切关注点(如日志、安全等)实现代码解耦。核心概念包括切面(封装功能)、连接点(程序执行点)、切点(匹配规则)、通知(增强动作)和织入(应用过程)。示例展示了Spring AOP实现,包含Maven配置、业务服务类、切面类(含各种通知类型)和主应用类,演示了日志记录、性能监控、安全校验等典型AOP场景,体现了非侵入式编程优势。原创 2025-07-23 22:32:09 · 936 阅读 · 0 评论
分享