当程序主动使用某个类时,如果该类还未被加载到内存中,则JVM会通过加载、连接、初始化3个步骤来对该类进行初始化。如果没有意外,JVM将会连续完成3个步骤,所以有时也把这个3个步骤统称为类加载或类初始化。 一、类加载过程1.加载 加载指的是将类的class文件读入到内存,并为之创建一个java.lan ...
分类:
编程语言 时间:
2020-07-17 11:39:42
阅读次数:
65
声明:本文摘抄自:https://blog.csdn.net/u010349169/column/info/jvm-principle 作为Java程序猿,我们知道,我们写好的.java 源代码,最后会被Java编译器编译成后缀为.class的文件,该类型的文件是由字节组成的文件,又叫字节码文件。那 ...
分类:
其他好文 时间:
2020-07-17 11:32:30
阅读次数:
66
方法区概述 栈堆方法区间的交互关系 方法区的基本理解 Hotspot 中方法区的演进 设置方法区大小的参数 OOM PermGen 和 OOM Metaspace 举例 方法区的内部结构 class 文件中常量池的理解 运行时常量池的理解 图示举例方法区的使用 方法区在 jdk6 、 jdk7 、 ...
分类:
其他好文 时间:
2020-07-16 21:19:58
阅读次数:
84
简介 JVM在运行的时候会对class文件进行加载,链接和初始化的过程。class文件中定义的常量池在JVM加载之后会发生什么神奇的变化呢?快来看一看吧。 class文件中的常量池 之前我们在讲class文件的结构时,提到了每个class文件都有一个常量池,常量池中存了些什么东西呢? 字符串常量,类 ...
分类:
其他好文 时间:
2020-07-16 11:44:07
阅读次数:
41
1、jar包是什么? 首先找来一个jar,可以看到他就是一个压缩文件,可以使用压缩工具打开,进一步打开,可以看到很多的.class文件,.class文件就是java源码经过编译后的文件 ...
分类:
编程语言 时间:
2020-07-15 15:43:05
阅读次数:
82
Delphi 错误提示: Unknown picture file extension (.jpg) 翻译:未知的图片文件扩展名(.jpg) 解决方法: uses JPEG; 创建时间:2020.07.13 更新时间: ...
四、类加载 编写的Java代码需要经过编译器编译为class文件(从本地机器码转变为字节码的过程),class文件是一组以8位字节为基础的二进制流,这些二进制流分别以一定形式表示着魔数(用于标识是否是一个能被虚拟机接收的Class文件)、版本号、字段表、访问标识等内容。代码编译为class文件后,需 ...
分类:
其他好文 时间:
2020-07-13 11:49:04
阅读次数:
54
1、Java执行过程 Java文件通过javac静态编译为class文件 class文件有2种方式执行:解释执行、JIT即时编译后执行 通常情况下 默认解释器边解释边运行,但对于一些热点代码会首先编译为机器码,缓存起来,后续执行执行缓存的机器码即可,提升执行效率 2、热点代码 Java采用计数器方式 ...
分类:
其他好文 时间:
2020-07-12 20:36:53
阅读次数:
84
#yum 源准备 1、更新一下yum: sudo yum -y update 该 -y 标志用于提醒系统我们知道我们正在进行更改,免去终端提示我们要确认再继续 2、安装yum-utils 【一组扩展和补充yum的实用程序和插件】 sudo yum -y install yum-utils 3、安装C ...
分类:
编程语言 时间:
2020-07-11 13:05:49
阅读次数:
62
前文地址:https://www.cnblogs.com/tera/p/13267630.html 本系列文章主要是博主在学习spring aop的过程中了解到其使用了java动态代理,本着究根问底的态度,于是对java动态代理的本质原理做了一些研究,于是便有了这个系列的文章 接上文,我们需要了解c ...
分类:
其他好文 时间:
2020-07-10 19:02:02
阅读次数:
45