Java基础
文章平均质量分 85
Java基础
empti_
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MyBatis中的@Options注解
属性作用常用场景/默认值是否使用自增主键插入后获取主键(默认false主键值赋给对象的哪个属性必须与配对使用flushCache执行后是否清空缓存增删改默认为true,查询默认为falseuseCache是否缓存查询结果查询语句默认为truetimeout语句执行超时时间(秒)防止长时间运行fetchSizeJDBC驱动抓取结果的行数提示优化大批量数据查询性能结果集类型一般用默认使用的Statement类型一般用默认PREPARED(防注入)@Options。原创 2025-09-04 15:37:24 · 858 阅读 · 0 评论 -
Junit 详解
JUnit 是一个开源的测试框架,专门用于 Java 程序的单元测试。它是 xUnit 家族的一部分,由 Kent Beck 和 Erich Gamma 创建。原创 2025-07-30 14:07:06 · 1134 阅读 · 0 评论 -
Java 类加载器体系详解
开发者可以继承实现热部署加载非 classpath 下的类实现类隔离(如 Tomcat 为每个 Web 应用使用独立的类加载器)典型实现方式@Override// 自定义类加载逻辑。原创 2025-07-08 15:38:22 · 983 阅读 · 0 评论 -
Java 函数式接口
函数式接口是有且仅有一个抽象方法的接口,但可以有多个默认方法或静态方法。函数式接口可以用注解标注,这不是必须的,但有助于编译器检查接口是否符合函数式接口的定义。// 可以有默认方法。原创 2025-06-27 11:27:15 · 320 阅读 · 0 评论 -
Java Lambda表达式
Lambda 表达式是 Java 8 引入的一个重要特性,它提供了一种更简洁的方式来表示匿名函数(anonymous function),使得函数式编程在 Java 中变得更加容易。原创 2025-06-26 18:18:03 · 284 阅读 · 0 评论 -
Java Properties 类详解
/ 系统默认配置// 用户配置(继承系统默认)// 用户偏好暗色主题// 最终使用的配置。原创 2025-06-26 16:25:06 · 878 阅读 · 0 评论 -
Java注解生命周期中的SOURCE和CLASS级别的作用
SOURCE级别纯粹用于源码级别处理无运行时开销适合代码生成和静态分析CLASS级别平衡源码处理和运行时性能适合字节码操作和类加载时处理比SOURCE更持久但比RUNTIME更轻量理解这三种生命周期的区别有助于在开发中正确选择注解的保留策略,既能满足功能需求,又能避免不必要的运行时开销。原创 2025-06-25 11:47:27 · 953 阅读 · 0 评论 -
Java注解的实现原理
语言层面:特殊的接口语法编译器层面:处理注解语法,生成class文件中的注解数据JVM层面:解析和存储运行时注解,提供反射API支持动态代理:实现注解实例的运行时行为理解注解的实现原理有助于更有效地使用注解,并能在需要时开发自定义注解处理器或框架级别的注解支持。原创 2025-06-24 18:24:32 · 979 阅读 · 0 评论 -
Java注解详解
注解(Annotation)是Java 5引入的一种元数据形式,它提供了一种向代码添加信息的方式,这些信息可以在编译时或运行时被读取和处理。注解使用关键字定义:2. 元注解用于注解其他注解的注解称为元注解,Java提供了以下几种元注解:二、注解的使用1. 基本使用2. 内置注解Java提供了一些内置注解:2. 编译时处理(注解处理器)创建注解处理器需要继承:四、高级特性1. 重复注解(Java 8+)2. 类型注解(Java 8+)Java 8扩展了注解的应用范围,可以用于任原创 2025-06-24 18:22:06 · 302 阅读 · 0 评论 -
Java反射机制详解
反射是指在程序运行期间,能够动态地获取类的信息(如类名、方法、字段、构造器等)并操作这些信息的能力。获取类的Class对象创建类的实例调用类的方法访问或修改类的字段Java反射机制提供了强大的动态编程能力,但应谨慎使用。合理使用反射可以编写出非常灵活的代码,但过度使用会导致性能问题和维护困难。在现代Java开发中,反射常用于框架开发,而应用代码中应优先考虑更类型安全的方式。原创 2025-06-23 10:49:45 · 498 阅读 · 0 评论 -
JVM元空间(Metaspace)详解及其工作流程
元空间(Metaspace)是Java虚拟机(JVM)在HotSpot VM 1.8及以后版本中引入的,用于替代永久代(PermGen)的内存区域。原创 2025-06-24 10:40:22 · 875 阅读 · 0 评论 -
JVM堆(Heap)详解与工作流程分析
日志分析实际对象晋升规律,针对性调整Survivor区比例(-XX:TargetSurvivorRatio)和晋升阈值。新生代 Young Generation。Eden区+From Survivor。老年代 Old Generation。分配成功(指针碰撞/TLAB)复制到另一Survivor区。复制到To Survivor。元空间 Metaspace。Survivor区 S0。Survivor区 S1。[存活对象年龄≥阈值]清空Eden+From。触发Minor GC。原创 2025-06-24 10:19:56 · 1039 阅读 · 0 评论 -
Java虚拟机栈(JVM Stack)详解与工作流程分析
虚拟机栈是JVM方法调用的核心载体,理解其运作机制对分析性能问题(如栈溢出)和调试复杂调用链至关重要。原创 2025-06-24 09:47:30 · 1224 阅读 · 0 评论 -
JVM程序计数器(PC)详解与工作流程分析
确保线程能够正确恢复执行位置,并控制程序流程。PC是JVM执行引擎的。假设当前线程开始执行。原创 2025-06-24 09:33:24 · 426 阅读 · 0 评论 -
为什么不推荐使用 Class.newInstance()
是 Java 反射 API 中用于创建类实例的传统方法,但从 Java 9 开始,这个方法已被标记为。使用起来更简单,但为了代码的健壮性和未来兼容性,应该遵循 Java 官方建议,使用。,然后将其解包并重新抛出,这会导致原始异常堆栈信息丢失,不利于调试。原创 2025-06-23 10:54:27 · 360 阅读 · 0 评论 -
以计数器程序为例,简析JVM内存模型中各部分的工作方式
这就是JVM运行Java程序的完整过程,各内存区域协同工作,共同支持程序的执行。:非原子操作导致结果可能为2而不是3。原创 2025-06-23 17:11:17 · 769 阅读 · 0 评论 -
JVM内存模型详解
JVM内存结构├── 线程共享区域│ ├── 堆(Heap)│ └── 方法区(Method Area) [JDK8+称为元空间(Metaspace)]│└── 线程私有区域├── 程序计数器(PC Register)├── Java虚拟机栈(Java Virtual Machine Stack)└── 本地方法栈(Native Method Stack)原创 2025-06-23 17:02:09 · 856 阅读 · 0 评论 -
Java中的Set实现类详解
Set是Java集合框架中表示不包含重复元素的集合接口。Java提供了多种Set接口的实现,每种实现都有其特定的使用场景和性能特点。LinkedHashSet底层实现:基于LinkedHashMap(哈希表+双向链表)特点:维护元素插入顺序迭代顺序可预测性能略低于HashSet(因需维护链表)允许null元素非线程安全最佳用途:需要维护插入顺序且快速查找的集合TreeSet底层实现:基于TreeMap(红黑树)特点:元素按自然顺序或Comparator排序基本操作原创 2025-06-19 11:34:05 · 746 阅读 · 0 评论 -
Java中的Queue实现类详解
Queue(队列)是Java集合框架中表示先进先出(FIFO)数据结构的重要接口。Java提供了多种Queue接口的实现,适用于不同的使用场景。原创 2025-06-19 11:36:43 · 1090 阅读 · 0 评论 -
Java中集合的深拷贝与浅拷贝实现
在Java中,集合的拷贝分为浅拷贝(shallow copy)和深拷贝(deep copy),理解它们的区别及实现方式非常重要。原创 2025-06-18 15:22:58 · 889 阅读 · 0 评论 -
Java中的List实现类详解
List是Java集合框架中最常用的接口之一,表示有序的集合(也称为序列)。Java提供了多种List接口的实现,每种实现都有其特定的使用场景和性能特点。原创 2025-06-19 11:31:43 · 1116 阅读 · 0 评论 -
Java中的Collections工具类详解
Collections是Java集合框架中最重要的工具类之一,位于java.util包中,提供了大量静态方法来操作和处理各种集合(List、Set、Map等)。下面我将全面解析Collections类的功能和使用方法。原创 2025-06-19 11:53:33 · 298 阅读 · 0 评论 -
Java集合框架详解
Java集合框架(Java Collections Framework, JCF)是Java中用于存储和操作数据集合的一组接口和类。它提供了高效的数据结构和算法,简化了程序员对集合的操作。集合框架的核心接口位于java.utilCollectionListSetQueueDequeMap。原创 2025-06-18 16:50:51 · 721 阅读 · 0 评论 -
Java中clone()方法的实现机制
在源文件中,方法只声明而未显示实现,但它在Java中确实是被实现的。方法实际上是通过**本地方法(Native Method)**实现的:在中,的声明如下:2. 为什么看不到实现却能使用JVM的本地方法实现虽然Java源代码中看不到实现,但JVM内部通过本地方法实现了的核心功能:内存级别的对象复制:HotSpot VM的实现:方法继承机制:JVM的特殊处理:简化版的JVM内部实现逻辑(实际用C++编写):4. 为什么这样设计这种设计有几个优点:性能考虑:安全性:灵活性:可以通过以下方式验证确实是实原创 2025-06-18 15:02:24 · 387 阅读 · 0 评论 -
Java中的Arrays工具类详解
/ 自定义Comparator排序// 按字符串长度排序// 对象数组排序。原创 2025-06-19 11:51:36 · 619 阅读 · 0 评论 -
Java中的Map实现类详解
Java集合框架提供了多种Map接口的实现,每种实现都有其特定的使用场景和特点。原创 2025-06-19 11:27:54 · 890 阅读 · 0 评论
分享