【jvm】类的主动使用和被动使用

目录

一、主动使用

  • 1.创建类的实例
  • 2.访问某个类或接口的静态变量,或者对该静态变量赋值
  • 3.调用类的静态方法
  • 4.反射(例如Class.forName("com.learning.Test"))
  • 5.初始化一个类的子类
  • 6.java虚拟机启动时被标明为启动类的类
  • 7.jdk7开始提供的动态语言支持:java.lang.invoke.MethodHandle实例的解析结果REF_getStatic、REF_putStatic、REF_invokeStatic句柄对应的类没有初始化,则初始化

二、被动使用

  • 1.其它使用java类的方式都看作是对类的被动使用,不会导致类的初始化
相关推荐
wuminyu6 小时前
深入剖析 Panama Off-heap 的性能损耗与开销
java·linux·c语言·jvm·c++
uoKent10 小时前
c++中new和malloc的区别
java·jvm·c++
~木雨11 小时前
String 底层原理与常量池全解析:byte []+coder、intern 陷阱、substring 内存泄漏,一篇讲透
java·jvm·内存优化·string·字符串常量池
cfm_291412 小时前
ThreadLocal 内存泄漏
java·jvm
liangbo714 小时前
JVM规范第 6 章:Java 虚拟机指令集
java·jvm
2501_937860941 天前
Java多线程初阶(下)—— synchronized、volatile、wait/notify与经典并发工具
java·开发语言·jvm
二十雨辰1 天前
[Java]-JVM面试题
java·开发语言·jvm
IT_Octopus1 天前
G1 与 GC 日志入门课程(以本次离线菜单 Full GC 事故为教材)
java·jvm
疯狂打码的少年2 天前
【数据库技术】关系代数连接运算(等值连接/自然连接/外连接)
jvm·数据库·笔记·oracle
ly76892 天前
Java 21 到 Java 26 新特性详解:虚拟线程、模式匹配、结构化并发、HTTP/3 与 AOT
java·jvm