加载

将类的字节码载入方法区中,内部采用 C++ 的 instanceKlass 描述 java 类,它的重要 field 有:

    _java_mirror 即 java 的类镜像,例如对 String 来说,就是 String.class,作用是把 klass 暴露给 java 使用
    
    _super 即父类
    
    _fields 即成员变量
    
    _methods 即方法
    
    _constants 即常量池
    
    _class_loader 即类加载器
    
    _vtable 虚方法表
    
    _itable 接口方法表
    
如果这个类还有父类没有加载,先加载父类

加载和链接可能是交替运行的

注意

    instanceKlass 这样的【元数据】是存储在方法区(1.8 后的元空间内),但 _java_mirror是存储在堆中
    
    可以通过前面介绍的 HSDB 工具查看

类加载-加载

 

相关文章:

  • 2021-08-02
猜你喜欢
  • 2022-12-23
  • 2021-12-19
  • 2022-02-16
  • 2021-09-22
  • 2021-09-09
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案