`
- 浏览:
441931 次
- 性别:
- 来自:
深圳
-
最近面试了阿里。发现其面试java这块对底层的了解很迫切。因此我也复习下。毕竟有段时间没有去碰java了。现在先从最基础最底层的一个问题开始:
JVM 加载Class的原理。上网上搜可以搜到很多。但是我还是按照自己的认识来复习下。
1.java文件都是需要编译为class文件。因此java中的所有类都必须被JVM加载才能运行。那么jVM是如何来加载呢?
1.1 jvm加载的类大致可以分为三种: 系统类,扩展类,自定义类
1.2 JVM对类加载的方式有两种:1.隐式加载 ,2 显式加载
a. 隐式加载:程序在运行过程中当碰到是由new 方式产生的对象时,隐式调用类加载器对应的类到JVM中。
b. 显式加载:通过Class.forName()等方法来显式加载这些需要的类。
1.3 类加载是一个动态的加载过程。它并不是一次性将所有的类全部加载在运行。它先将一些必须的基础类一次性加载到JVM中。其他的类要等到用到的时候在加载进入JVM。
1.4 java类三层次加载器:最高层(Bootstrap Loader) 负责加载系统类 第二层(ExtClassLoader)负责加载扩展类。第三层(AppClassLoader)负责加载应用类。
1.5 三层次类加载器之间的协调加载机制靠(委托模型)这个委托加载就是当有需要类进行加载。那么首先会让其父层进行加载,如果父层没有找到或没有加载到,那么才会到自己来进行加载。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
JVM加载class文件的原理机制 Java中的所有类,必须被装载到jvm中才能运行,这个装载工作是由jvm中的类装载器完成的,类装载器所做的工作实质是把类文件从硬盘读取到内存中
JVM加载class文件的原理机制JVM加载class文件的原理机制 JVM中类的装载是由类加载器(ClassLoader)和它的子类来实现的,Java中的类加
JVM加载class文件的原理机制.pdf
Java 语言是一种具有动态性的解释型编程语言,当指定程序运行的时候, Java 虚拟机就将编译生成的 .
JVM实战-JVM类加载机制案例分析
讲解JVM的ClassLoader子系统原理.
JVM 原理及工作机制JVM 原理及工作机制
JVM 面试题:Java 类加载过程、JVM 加载 Class 文件的原理机制、Java内存分配
详细介绍了JVM执行子系统的工作原理,包括类文件结构与字节码指令(Class类文件结构、JVM字节码指令简介)、JVM类加载机制(类加载器、类加载时机、类加载过程)、字节码执行引擎(运行时候的栈结构、方法调用、方法...
JVM:组成部分、垃圾回收机制和算法、对内存的管理办法。
首先讲述JVM的基本概念和原理、架构等。最后一HelloApp讲述JVM的工作过程
JVM负责装载class文件并执行,因此,首先是JDK如何将Java代码编译为class文件、如何装载class文件及如何执行class,将源码编译为class文件的实现取决于各个JVM实现或各种源码编译器。class文件通常由类加载器...
分析记录了class文件内部的文件结构以及分析过程,上传到CSDN当一个记录用,有问题不要喷呀,一起学习进步
文档仅仅叙述了JVM组成,工作原理。以及java对象的创建存储消亡
讲JVM工作原理、垃圾回收讲的非常好的一个ppt
在执行方法时JVM提供了invokestatic、invokevirtual、invokeinterface和invokespecial四种指令来执行 (1)invokestatic:调用类的static方法 (2)invokevirtual:调用对象实例的方法 (3)invokeinterface:将属性...
Jvm之用C#解析class文件
JVM类加载过程
深入JVM内核—原理、诊断与优化视频教程 深入JVM内核—原理、诊断与优化视频教程
介绍JVM规范中的最重要的内容——Class文件结构,同时介绍ASM库的使用以及对class文件的修改。 第十一课 字节码执行 案例以及javap JIT及相关参数 介绍JVM的字节码以及反汇编方法,同时介绍JIT相关的参数和应用。