美文网首页
类加载机制

类加载机制

作者: _一叶孤帆 | 来源:发表于2021-03-04 17:54 被阅读0次

JVM 与 Dalvik

Android 应用程序运行在 Dalvik / ART 虚拟机上,每个应用程序都有一个单独的虚拟机实例。Dalvik 虚拟机也是一个 Java 虚拟机,只不过执行的是 dex (一个 dex 包含多个 class ) 文件,而不是 class (一个class 就是一个文件) 文件

JVM 是基于栈的虚拟机,dalvik 是基于寄存器的虚拟机。

基于栈的虚拟机

对于基于栈的虚拟器来说,每一个运行时的线程,都有一个独立的栈,每一次方法调用,都会产生一个栈帧。 栈帧中存在一个操作数栈,而基于栈的虚拟机就是通过操作数栈来进行操作。

基于寄存器的虚拟机

寄存器是 CPU 的组成部分。寄存器是有限存贮容量的告诉存贮部件,可以用来暂存指令、数据和位址。

基于寄存器的虚拟机中没有操作数栈,担忧很多虚拟寄存器,这些寄存器也存放在运行时栈中,本质上就是一个数组,在 Dalvim VM 中每个线程都有自己的 PC 和调用栈,方法调用的活动记录以帧为单位保存在调用栈上。

ClassLoader

每个类都有自己的类加载器。

getClass().getClassLoader()

双亲委派机制

某个类加载器在加载类时,首先将加载任务委托给父类加载器,依次递推,如果父类加载器可以完成类加载任务,就成功返回,只有父类加载器无法完成此加载任务或者没有父类加载器时,自己才去加载。

  1. 避免重复加载
  2. 安全

区分类加载

loadClass

findClass

简单热修复

在类加载之前加载自己的 dex 文件来覆盖要修复的类。

相关文章

  • 类加载机制(一)

    加载机制系列类加载机制(一)类加载机制(二)类加载机制(三) 类加载机制 1.JVM把class文件加载到内存,对...

  • 类加载机制(三)

    加载机制系列类加载机制(一)类加载机制(二)类加载机制(三)类加载器 这里引用尚学堂的的几张图片 demo: 结果:

  • JVM——类加载机制

    前言 今天就来介绍类的加载机制以及双亲委派机制。 JVM 类加载机制 JVM 类加载的五个阶段 JVM 类加载机制...

  • 类加载机制(二)

    加载机制系列类加载机制(一)类加载机制(二)类加载机制(三)类的加载全过程中的主动引用与被动引用 类的主动引用(会...

  • 类加载机制

    类加载机制 类加载机制是指 .class文件加载到JVM,并形成Class对象的机制。 类加载机制可以在运行时动态...

  • 从萌新的角度理解Java类加载机制

    类加载机制 本文主要是对java中类加载机制的入门级别文章,主要介绍类加载机制基本概念,以及类加载机制主要内容。本...

  • 从类加载开始的JVM学习

    目录 引言 java类加载流程 java类加载机制- 类加载原理- 双亲委派机制 Tomcat中双亲委派机制的应用...

  • java基础知识,JVM虚拟机类加载机制

    知识要点: 类加载机制简介 类加载机制流程 类加载机制简介 虚拟机把描述类的数据从Class文件加载到内存,并对数...

  • 【JAVA】京东一面

    1、类加载机制概念、加载步骤、双亲委托机制、全盘委托机制、类加载器种类及继承关系 2、如何实现让类加载器去加载网络...

  • 3:类加载机制深度解析(Tomcat打破双亲委派机制)(文末有项

    1:Tomcat的类加载机制 2:Tomcat的类加载机制流程图 3:Tomcat的类加载机制总结 4:代码实战 ...

网友评论

      本文标题:类加载机制

      本文链接:https://www.haomeiwen.com/subject/choqqltx.html