首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java 基础
金銀銅鐵
创建于2025-06-27
订阅专栏
通过 javap 命令查看 class 文件,从而了解 java 的一些特性是如何实现的
等 1 人订阅
共26篇文章
创建于2025-06-27
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
[Java] JDK 21 新变化之 Sequenced Collections
本文探讨了为何 JDK 21 中新增了 SequencedCollection 等接口以及这些接口在集合类型体系中的位置
[Java] 如何自动生成简单的 Mermaid 类图
虽说画类图的过程有利于加深自己的理解,但是查看各个类/接口的信息毕竟比较耗时耗力,且容易出错,本文展示了可以自动生成简单类图的 java 代码,欢迎大家使用
[Java] 线程池状态小总结
根据 ThreadPoolExecutor.java 中的描述,线程池共有 5 种状态。我们来验证一下这些状态之间的转化关系。
[Java] 调用 HashMap 的 put(K, V) 方法时,Node 变为 TreeNode 的条件
调用 HashMap 的 put(K, V) 方法时,Node 变为 TreeNode 需要同时满足 1.当前 index 中原有 entry 的数量>=8,2. table.length >= 64
[Java] JDK 25 新变化之紧凑的源文件(Compact Source Files)
JDK 25 发布了,其中包含了一些新特性,具体的变化可以参考 JDK 25 Release Notes。本文会探讨 紧凑的源文件(Compact Source Files) 这一特性是如何实现的
[Java] JDK 25 新变化之构造函数的执行逻辑
JDK 25 已经发布了,其中一个变化是对 JEP 513: Flexible Constructor Bodies 的支持。本文会探讨这个变化对构造函数执行逻辑的影响
Spring 中的 initializeBean 方法小总结
Spring 中的 initializeBean 方法的内部逻辑小总结。initializeBean 方法的主要逻辑可以分为 4 步,本文对此进行总结
[Java] JDK 25 新特性之简化的 main 方法
JDK 25 新特性之简化的 main 方法。JDK 25 对 main() 方法的限制做了调整,本文会探讨这个调整的具体内容
[Java] 如何查看 class 文件的内容:第 1 部分 魔数和版本号
如何阅读 class 文件的内容:第 1 部分 魔数和版本号 要点 u1/u2/u4 分别用来表示无符号的 1 byte/2 byte/4 byte。 class 文件的开头部分是魔数和版本号
[Java] 观察 CompactStrings 选项的影响
观察 java 中 CompactStrings 选项的影响。从 JDK 9 开始,String 类中改为使用 byte[] 来存储 String 中的所有 char。
[Java] 浅析可重复注解(Repeatable Annotation) 是如何实现的
浅析 java 中的可重复注解(Repeatable Annotation)是如何实现的。使用可重复注解时,总是需要定义对应的 containing annotation。
[Java] 枚举常量的精确类型一定是当前枚举类型吗?
java 枚举常量的精确类型一定是当前枚举类型吗?不一定。如果枚举常量上定义了方法,那么就会生成对应的匿名内部类来保存这个方法的逻辑
[Java] 浅析密封类(Sealed Classes) 在 class 文件中是如何实现的
浅析 Java 中的密封类(Sealed Classes) 在 class 文件中是如何实现的。密封类所 permit 的子类的信息保存在 PermittedSubclasses 属性中
[Java] 浅析 Set.of(...) 方法
浅析 java 中的 Set.of(...) 方法。JDK 9 在 java.util.Set 接口中提供了一组 of(...) 静态方法。本文会探索这背后发生了什么
[Java] 浅析注解是如何实现的
浅析 java 中的注解是如何实现的。主要结论:每个注解都 extend 了 Annotation 这个 class,每个注解都是接口,注解的实现用到了动态代理。
[Java] functional interface 分类
functional interface 小汇总。Java 中有个特殊的注解 @FunctionalInterface,JDK 中的一些接口带有这个注解,这些接口有什么区别呢?
[Java] 以 IntStream 为例,浅析 Stream 的实现
以 IntStream 为例,浅析 Java 中 Stream 的实现。我们在使用 Stream 时,典型的步骤是,创建 Stream 执行若干(可以是 0 个)中间操作,执行终止操作。
[Java] 变长参数是如何实现的
Java 中的变长参数是如何实现的。javac 编译器会将变长参数放置在一个数组中,然后调用对应的方法。接受变长参数的方法会有一个特殊的 flag 被置位
[Java] 验证 ArrayList 的扩容机制
验证 ArrayList 的扩容机制。通过反射,我们可以观察到 ArrayList 的 size 和 capacity 的变化。
[Java] 浅析枚举的实现
Java 枚举简介 1. 在枚举类中,每个常量都是 public static final 的实例 2. Enum 这个基类中定义了 name/ordinal 字段和对应的 getter 方法
下一页