JVM虚拟机
文章平均质量分 78
Ruys
菜逼大三学生的爬坡路
展开
-
JVM内存结构(二)类加载器的双亲委派机制
双亲委派机制问题起源:既然类加载器还分那么多种类,那JVM怎么确定某个类在加载时应该使用哪一种类加载器呢,这就引出本文的重点——双亲委派机制。双亲委派机制到底是啥由类加载器分类可以看到类加载器间是有继承关系的,除引导类加载器(Bootstrap ClassLoader)外都是ClassLoader的子类,class文件被送入类加载器后会先被送到父类加载器,一层层地传递一直送到引导类加载器,如果引导类加载器无法加载该class就会把class送往下一层的子类加载器去尝试加载,直到送到可以被成功加载的类原创 2021-06-14 18:27:14 · 97 阅读 · 0 评论 -
JVM内存结构(一)类加载器
JVM架构可以大致将JVM区分为六个区域,这里简述下各自作用Class文件:我们平时编写的是.java文件,为源文件;.java在执行javac编译后生成.class文件,即字节码文件,jvm实际处理的是字节码文件。类加载子系统:加载class文件,为class文件在运行时数据区初始化数据(例如类、接口和一些静态变量的加载等等)。运行时数据区:就如名字一样,运行时大多的数据运算在此区域进行。执行引擎:执行字节码指令时就会使用到执行引擎(例如要执行本地方法之类的,就由执行引擎去控制运行时数据区执行原创 2021-06-14 16:45:22 · 1174 阅读 · 1 评论 -
Java虚拟机——String的intern方法
intern方法学习Java内存区域的运行时常量池内容涉及到String的intern方法作用每一次new String都会创建出新的String对象,使用intern方法则会直接将常量池中已有的字符串引用给出(或者原本里面没有立刻新建一个),节约程序占用空间,而不会因new出多个String对象导致OutOfMemoryError,可以提高程序的健壮性;关于字符串String中的intern方法,是当前的字符对象(通过new出来的对象)可以使用intern方法从常量池中获取,如果常量池中不存在该字原创 2020-11-22 16:58:30 · 215 阅读 · 0 评论