![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
皓晨的架构笔记
生命不息,奋斗不止!
展开
-
JVM之类的主动使用和被动使用
Java程序对类的使用方式分为主动使用和被动使用。主动使用:创建类的实例访问某个类或接口的静态变量,或者对该静态变量赋值调用类的静态方法使用反射,例如:Class.forName(“java.lang.String”)初始化一个类的子类Java虚拟机启动时被标明为启动类的类被动使用:除上述几种情况外,其它使用Java类的方式都被看作是对类的被动使用,都不会导致类的初始化...原创 2020-03-12 21:42:12 · 174 阅读 · 0 评论 -
JVM之双亲委派模型
什么是双亲委派模型?Java虚拟机对class文件采用的按需加载的方式,也就是说当需要使用该类的时候才会将它的class文件加载到内存当中,将加载此class文件时,它首先把这个任务委托给他的上级类加载器,如果上级的类加载器没有加载,自己才会去加载这个类,这也属于一种任务委派模式。工作原理当一个类加载器收到了类加载请求的时候,它并不会自己先去加载,而是把这个请求逐层向上委托,询问此类是否已...原创 2020-03-12 21:28:14 · 164 阅读 · 0 评论 -
JVM之类加载子系统
什么是类加载子系统?类加载子系统是是负责从本地文件系统或者网络当中加载class文件,加载的信息存放于一块称为方法区的内存空间。除了类的信息之外,方法区中还会存放运行时的常量信息,可能包括字符串字面量和数字常量。Java的类加载分为三个阶段,分别是加载(Load)、链接(Link)、初始化(Init),如下图所示:类的加载过程Loading通过一个类的全限定名获取定义此类的二进制字节...原创 2020-03-11 22:23:52 · 394 阅读 · 0 评论 -
JVM介绍
什么是虚拟机?所谓虚拟机(Virtual Machine),就是一台虚拟的计算机。它是一款软件,用来执行一系列的虚拟计算机指令。大体上虚拟机可以分为系统虚拟机和程序虚拟机:大名鼎鼎的Virtual Box,VMware就属于系统虚拟机,它们完全是对物理计算机的仿真,提供了可以完整运行操作系统的软件平台。程序虚拟机的典型代表就是Java虚拟机,它专门为了执行单个计算机程序而设计的,在Java...原创 2020-03-10 22:44:51 · 221 阅读 · 0 评论