自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(206)
  • 收藏
  • 关注

原创 Java学习第一百八十部分——ThreadLocal内存泄漏根源与解决方案

本文介绍ThreadLocal内存泄漏根源与解决方案。

2025-08-29 21:45:22 887

原创 Java学习第一百七十九部分——ClassLoader命名空间隔离性

本文介绍ClassLoader命名空间隔离性。

2025-08-29 21:18:51 905

原创 Java学习第一百七十八部分——常量折叠与编译期优化

本文介绍常量折叠与编译期优化。

2025-08-29 20:36:38 886

原创 Java学习第一百七十七部分——偏向锁撤销代价

本文介绍偏向锁撤销代价。

2025-08-28 22:33:44 531

原创 Java学习第一百七十六部分——内存屏障与内存可见性保证

本文介绍内存屏障与内存可见性保证。

2025-08-28 22:25:35 925

原创 Java学习第一百七十五部分——JVM逃逸分析与标量替换

本文介绍JVM逃逸分析与标量替换。

2025-08-28 22:12:11 562

原创 Java学习第一百七十四部分——JVM安全点对性能影响问题

本文介绍JVM安全点对性能影响及解决方案。

2025-08-27 20:55:38 895

原创 Java学习第一百七十三部分——对象头的内存开销

本文介绍Java对象头与内存开销分析。

2025-08-27 20:41:23 762

原创 Java学习第一百七十二部分——数值计算中间溢出问题

这个问题是 Java 编程中一个非常经典且常见的陷阱,对于初学者甚至是有经验的开发者都可能遇到。本文详细介绍它。

2025-08-27 20:18:22 1064

原创 Java学习第一百七十一部分——Lambda表达式与effectively final详解

在 Lambda 表达式或匿名内部类中,如果要访问其外部作用域(通常是一个方法)中的局部变量,那么这个局部变量必须被声明为 final 或者是 effectively final。本文介绍其详细内容。

2025-08-26 21:26:05 1008

原创 Java学习第一百七十部分——模块化反射访问限制

本文介绍关于 Java 9 模块化(JPMS)下反射访问限制的详细说明。

2025-08-26 21:06:25 1153

原创 Java学习第一百六十九部分——Optional的误用

本文介绍三种典型的Optional误用情况及其详细解释。

2025-08-26 20:44:54 1014

原创 Java学习第一百六十八部分—— 初始化阶段的“向前引用”

可以“写”未声明的静态变量,但不能“读”未声明的静态变量。本文解释说明这句话。

2025-08-25 22:22:43 426

原创 Java学习第一百六十七部分——移位运算符的位数取模机制

本文通过一个可视化界面来详细解释这个机制。

2025-08-25 21:47:43 309

原创 Java学习第一百六十六部分——Suppressed Exceptions

本文详细介绍在处理资源管理时非常重要且容易被忽略的概念——try-with-resources 语句中的Suppressed Exceptions(被抑制的异常)。

2025-08-25 21:30:12 1182

原创 Java学习第一百六十五部分——数组的协变与泛型的不变

本文介绍数组的协变与泛型的不变。

2025-08-24 08:52:13 748

原创 Java学习第一百六十四部分——方法重写异常签名限制

本文介绍Java 方法重写时的异常签名限制。

2025-08-24 08:33:35 553

原创 Java学习第一百六十三部分——字符串常量池位置变化

本文介绍字符串常量池的位置变化。

2025-08-24 08:10:11 918

原创 Java学习第一百六十二部分——类初始化阶段的死锁风险

类初始化阶段的死锁风险是一个在Java高级并发编程中非常经典且隐蔽的问题。本文介绍其详细信息。

2025-08-23 19:15:06 957

原创 Java学习第一百六十一部分——equals()和toString()

equals()用于比较两个对象是否相等,而toString()用于返回对象的字符串表示形式。本文介绍其详细信息。

2025-08-23 19:01:26 748

原创 Java学习第一百六十部分——Comparator实现中的相等性要求

在 Java 中,实现 `Comparator.compare()` 方法时必须确保其逻辑与 `equals()` 方法保持一致,否则在使用 `TreeSet`、`TreeMap` 等基于比较的集合时会出现异常行为。

2025-08-23 18:48:04 557

原创 Java学习第一百五十九部分——断言(assert)机制

Java断言是一种用于调试的语句,用于验证程序中的假设条件是否成立。本文介绍其详细信息。

2025-08-22 10:31:56 450

原创 Java学习第一百五十八部分——伪共享性能问题

伪共享指的是当多个线程同时访问并修改同一个CPU缓存行(Cache Line) 中不同的、独立的变量时,导致系统性能下降的现象。本文介绍其详细信息。

2025-08-22 10:10:58 1169

原创 Java学习第一百五十七部分——静态域初始化顺序规则

本文介绍静态域初始化顺序规则,名字挺长,其实简单。

2025-08-22 09:49:53 408

原创 Java学习第一百五十六部分——整数溢出问题

在Java中,int和long等基本整数类型的运算是基于 32 位 或 64 位 二进制补码表示的,这种设计追求的是执行速度,而非安全性,所以可能会导致整数溢出问题。本文介绍问题原因及解决方案。

2025-08-21 10:12:41 1197

原创 Java学习第一百五十五部分——Integer缓存机制

本文介绍Java 中 `Integer` 类的一个核心特性——整数缓存机制。

2025-08-21 09:52:57 860

原创 Java学习第一百五十四部分——for-each的修改限制问题

本文详细解析 Java 中 `for-each` 循环的修改限制问题。

2025-08-21 09:26:58 1217

原创 Java学习第一百五十三部分——日期时间API时区处理

日期时间对象如果不携带时区信息,它代表的就只是一个挂钟时间(Wall Time),而不是时间线上的一个绝对时刻。本文围绕“为什么‘无时区’是一个问题”进行详细介绍。

2025-08-20 10:13:46 1320

原创 Java学习第一百五十二部分——字符编码默认依赖风险

本文介绍分析“为什么默认依赖是危险的”。

2025-08-20 09:39:51 745

原创 Java学习第一百五十一部分——静态绑定和动态绑定

本文介绍对静态绑定(编译时绑定)和动态绑定(运行时绑定)的对比及详细信息。

2025-08-20 08:42:50 1005

原创 Java学习第一百五十部分——final, finally和finalize

本文介绍`final`、`finally` 与 `finalize()`的详细对比。

2025-08-19 13:38:37 1067

原创 Java学习第一百四十九部分——throw和throws

本文介绍关于 Java 中 `throw` 和 `throws` 关键字的详细解析,涵盖核心区别、使用场景及注意事项。

2025-08-19 13:11:11 1006

原创 Java学习第一百四十八部分——String、StringBuilder和StringBuffer

在Java中,`String`、`StringBuilder` 和 `StringBuffer` 是处理字符串的核心类,它们的设计目标和使用场景有显著差异。本文介绍其详细信息。

2025-08-19 12:53:07 656

原创 Java学习第一百四十七部分——ArrayList与LinkedList

本文介绍针对 `ArrayList` 与 `LinkedList` 的详细对比分析,涵盖底层实现、性能差异、内存占用及适用场景。

2025-08-18 21:35:05 588

原创 Java学习第一百四十六部分——重载与重写

本文介绍重载与重写的信息以及对比。

2025-08-18 21:17:26 406

原创 Java学习第一百四十五部分——switch语句的穿透问题

在Java中,`switch`语句的“穿透问题”(也称为“fall-through”行为)是一个非常重要的特性,但也容易导致错误。

2025-08-18 20:24:47 873

原创 Java学习第一百四十四部分——泛型擦除副作用

在Java中,泛型擦除是指在运行时,泛型类型的信息会被擦除,只剩下原始类型。这种机制带来了一些副作用,其中一个主要副作用就是无法直接获取泛型参数的实际类型。本文介绍其详细信息。

2025-08-18 17:38:39 634

原创 Java学习第一百四十三部分——静态方法的绑定

在Java中,静态方法(`static`方法)和实例方法在多态和绑定机制上有很大的区别。静态方法的绑定是在编译期完成的,而不是在运行时。本文介绍其详细信息。

2025-08-18 17:07:27 674

原创 Java学习第一百四十二部分——浅拷贝 vs 深拷贝

在Java中,浅拷贝和深拷贝是两种不同的对象复制方式。本文介绍其详细信息。

2025-08-18 16:40:43 608

原创 Java学习第一百四十一部分——资源泄漏

在Java中,资源泄漏是一个常见的问题,尤其是在处理I/O操作(如文件输入/输出、数据库连接等)时。本文介绍其详细信息。

2025-08-16 09:31:36 1016 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除