专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

JavaJVM

mp.weixin.qq.com/s/Bdwn_mrwI…

类加载过程

系统加载Class类型的文件主要三步:加载➡️连接➡️初始化。其中连接过程有可分为三步:验证➡️准备➡️解析。

72_1.png

加载

  • 通过全类名获取定义次类的二进制字节流
  • 将字节流所代表的静态存储结构转换为方法去的运行时数据结构
  • 在内存中生成一个代表该类的Class对象,作为方法区这些数据的访问入口

验证

72_2.png

准备

正式为类变量分配分配内存并设置类变量初始值的阶段

解析

虚拟机将常量池内的符号引用替换为直接引用的过程,也就是得到类或者字段、方法在内存中的指针或者偏移量。

初始化

真正执行类中定义的java程序代码,初始化是执行类构造器 ()方法的过程。

类加载器

JVM 中内置了三个重要的 ClassLoader,除了 BootstrapClassLoader 其他类加载器均由 Java 实现且全部继承自java.lang.ClassLoader:

  • BootstrapClassLoader(启动类加载器) :最顶层的加载类,由C++实现,负责加载 %JAVA_HOME%/lib目录下的jar包和类或者或被 -Xbootclasspath参数指定的路径中的所有类。
  • ExtensionClassLoader(扩展类加载器) :主要负责加载目录 %JRE_HOME%/lib/ext 目录下的jar包和类,或被 java.ext.dirs 系统变量所指定的路径下的jar包。
  • AppClassLoader(应用程序类加载器) :面向我们用户的加载器,负责加载当前应用classpath下的所有jar包和类。

双亲委派模型

文章永久链接:https://tech.souyunku.com/45492

未经允许不得转载:搜云库技术团队 » JavaJVM

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们