黑马JVM总结(三十)

(1)类加载-连接-解析

new对象,会触发对象的解析和初始化

通过类加载器加载类C,这里只会进行类C的加载并不会导致类C的解析以及初始化,这样加载类C的时候类D也不会解析跟初始化

通过jps找到进程id:

打开进程工具

可以看到类C在虚拟机里

使用new 关键字,这样类D也加载了

解析:也就是将常量池中的符号引用解析为直接引用,符号引用仅仅是符号,并不知道类啊,方法,属性并不知道这些符号在内存的那个位置,经过解析以后,变成了这种直接引用,就能够确切的知道类啊,方法啊在内存中的位置了

(2)类加载-初始化

初始化阶段呢实际上去执行类的构造方法,cinit方法阶段

(3)类加载-练习1

a和b是基本类型,属于静态常量,他们都是在类连接的准备阶段进行赋值的并不会导致类的初始化,所以访问E不会别初始化,c是包装类不会在准别阶段完成赋值,在初始化会完成导致类的初始化

(4)类加载-练习2

只有用到LazyHolder的时候才会触发加载,连接,跟初始化

相关推荐
weixin_444012933 分钟前
CSS Flex布局中如何实现导航栏与Logo的左右分布_利用justify-content- space-between
jvm·数据库·python
彳亍1016 分钟前
Less如何优化CSS文件大小_利用压缩配置去除冗余样式
jvm·数据库·python
m0_7485548110 分钟前
SQL如何防止JOIN查询导致数据库宕机_查询超时限制与资源管理
jvm·数据库·python
m0_7485548112 分钟前
React 中的渲染(Rendering)机制详解
jvm·数据库·python
2401_8800714016 分钟前
html怎么用jekyll转换_Jekyll博客如何导入传统HTML页面
jvm·数据库·python
wang3zc31 分钟前
CSS如何实现元素镜像翻转_使用transformscalex负值
jvm·数据库·python
CLX050535 分钟前
Golang如何做图片处理缩放_Golang图片处理教程【收藏】
jvm·数据库·python
2301_8125396742 分钟前
mysql如何限制用户连接数_使用MAX_USER_CONNECTIONS优化并发
jvm·数据库·python
欢璃1 小时前
表白墙案例
java·开发语言·jvm·spring boot·spring·maven·mybatis
X56611 小时前
Python Django怎么处理404_关闭DEBUG模式并自定义配置全局404与500友好错误重定向页面
jvm·数据库·python