jvm-类加载子系统

news2025/1/28 1:06:37

1.内存结构概述

类加载子系统负责从文件系统或网络中加载class文件,class文件在文件开头有特定的文件标识

ClassLoader只负责class文件的加载,至于它是否运行,则由Execution Engine决定

加载的类信息存放于一块称为方法区的内存空间,除了类的信息外,方法区中还会存放运行时常量池信息,可能还包括字符串常量和数字常量

2.类加载器与类的加载过程

 

加载:

1.通过一个类的全限定名获取定义此类的二进制字节流

2.将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构

3.在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口

 

链接:验证、准备、解析

验证

        主要包括四种验证:文件格式验证,元数据验证,字节码验证,符号引用验证

准备

        为类变量分配内存并设置该类变量的默认初始值,即零值

        这里不包含final修饰的static,因为final在编译的时候就会分配了,准备阶段会显示初始化

        这里不会为实例变量分配初始化,类变量会分配在方法区,而实例变量是会随着对象一起分配到java堆中

解析

        将常量池内的符号引用转换为直接引用的过程

        符号引用就是一组符号来描述所引用的目标。

        直接引用就是直接指向目标的指针、相对偏移量或一个间接定位到目标的句柄

初始化

        初始化阶段就是执行类构造器方法<clinit>()的过程,此方法不需要定义,是javac编译器自动收集类中的所有类变量的赋值动作和静态代码块中的语句合并而来

        构造器方法中指令按语句在源文件中出现的顺序执行

        <cliinit>()不同于类的构造器

        若该类具有父类,jvm会保证子类的<cliinit()执行前,父类的<cliinit>()已经执行完毕

        虚拟机必须保证一个类的<cliinit>()方法在多线程下被同步加锁

3.类加载器分类

4.ClassLoader的使用说明

5.双亲委派机制

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/894458.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

英特尔NUC12发烧友套件(蝰蛇峡谷)评测,适合设计者的迷你主机

英特尔的下一代计算单元&#xff08;NUC&#xff09;系列迷你个人电脑不断发展&#xff0c;现在已经拥有真正的英特尔Arc游戏硬件。NUC 12蝰蛇峡谷是第一款采用英特尔Arc专用图形处理器的NUC&#xff0c;具体来说&#xff0c;是搭载了Arc A770M移动GPU和16GB独立显存。配备Core…

【数据分享】1901-2022年1km分辨率逐年最低气温栅格数据(免费获取/全国/分省)

气温数据是我们在各项研究中最常用的气象指标之一&#xff01;之前我们给大家分享过1901-2022年1km分辨率逐月最低气温栅格数据&#xff08;可查看之前的文章获悉详情&#xff09;&#xff01;该数据来源于国家青藏高原科学数据中心&#xff0c;这儿的逐月最低气温是当月每日最…

Android 14新增复制粘贴方式,解析工作原理

安卓14为用户提供了一种更简单的方式来在应用程序之间复制和粘贴内容&#xff0c;这肯定是你现在想在安卓14测试版或未来几个月该软件在你的安卓手机上推出时尝试的。 一旦更新在你的手机上&#xff08;无论是测试版还是其他版本&#xff09;&#xff0c;你只需点击并按住你想…

高忆管理:药店零售概念回落,开开实业走低,此前7日大涨超80%

药店零售概念18日盘中大幅下挫&#xff0c;到发稿&#xff0c;华人健康跌逾11%&#xff0c;漱玉布衣、塞力医疗跌超9%&#xff0c;重药控股、浙江震元、榜首医药等跌超7%&#xff0c;药易购跌超6%&#xff0c;开开实业跌超3%。 值得注意的是&#xff0c;开开实业此前7个交易日斩…

单因素多变量方差分析

多变量方差分析&#xff1a;是对多个独立变量是否受单个或多个因素影响而进行的方差分析。它不仅能够分析多个因素对观测变量的独立影响&#xff0c;更能够分析多个因素的交互作用能否对观测变量产生影响。本章以单因素多变量分析为例&#xff0c;即一个分组变量和多个欲分析的…

这几点,RunnerGo领先太多了

在用jmeter做性能测试时想看完整一点的测试报告&#xff0c;想配置阶梯模式来压测&#xff0c;想配置不同的接口并发这些都需要安装插件并且影响机器性能&#xff0c;想做自动化测试还得放到jenkins&#xff0c;这些配置起来太繁琐。今天给大家推荐一款测试平台RunnerGo&#x…

如何禁止windows系统自动更新

自从升级到win11之后&#xff0c;发现更新插件的频率高得有点过分&#xff0c;基本上每周都有提醒让你更新软件。 对于我这种经常半年都不关机的使用者&#xff0c;这玩意真的蛮烦躁的&#xff0c;关键更新的内容我看了都很无聊。 系统到是给了暂停更新的功能&#xff0c;但是…

flink jira 提交开源bug

注册apache issue账号,并申请flink空间的权限后. 提问题/bug 查看已经提交的问题:

全自动模拟量采集软件框架详解

Monitor.Analog采用一种MVVM架构模式&#xff0c;用于将用户界面&#xff08;View&#xff09;与业务逻辑&#xff08;Model&#xff09;进行分离&#xff0c;并通过ViewModel来进行连接和交互。以下是MVVM框架的介绍&#xff1a; 1. Model&#xff08;模型&#xff09;&#x…

Java版 招投标系统简介 招投标系统源码 java招投标系统 招投标系统功能设计tbms

​ 项目说明 随着公司的快速发展&#xff0c;企业人员和经营规模不断壮大&#xff0c;公司对内部招采管理的提升提出了更高的要求。在企业里建立一个公平、公开、公正的采购环境&#xff0c;最大限度控制采购成本至关重要。符合国家电子招投标法律法规及相关规范&#xff0c;以…

【【Verilog典型电路设计之FIFO设计】】

典型电路设计之FIFO设计 FIFO (First In First Out&#xff09;是一种先进先出的数据缓存器&#xff0c;通常用于接口电路的数据缓存。与普通存储器的区别是没有外部读写地址线&#xff0c;可以使用两个时钟分别进行写和读操作。FIFO只能顺序写入数据和顺序读出数据&#xff0…

SpringBoot复习:(55)在service类中的方法上加上@Transactional注解后,Spring底层是怎么生成代理对象的?

SpringBoot run方法代码如下&#xff1a; 可以看到它会调用refreshContext方法来刷新Spring容器&#xff0c;这个refreshContext方法最终会调用AbstractApplicationContext的refresh方法&#xff0c;代码如下 如上图&#xff0c;refresh方法最终会调用finisheBeanFactoryInit…

红帽8.2版本CSA题库:第十二题查找字符串

红帽8.2版本CSA题库&#xff1a;第十二题查找字符串 grep ng /usr/share/xml/iso-codes/iso_639_3.xml > /root/list #查找并重定向写入 cat /root/list #查看

LVS负载均衡群-DR模式

目录 1、LVS-DR数据包流向分析 2、DR 模式的特点 3、LVS-DR中APP的问题 3.1 ari jignore-1 3.2 arp announce-2 4、DR模式 LVS负载均衡群集部署 5、简述LVS三种工作模式&#xff0c;简述他们的区别? 6、LVS调度算法 7、LVS的工作模式及其工作过程及其优缺点 1、LVS-DR…

剑指 Offer 62. 圆圈中最后剩下的数字 (这题纯无语)

文章目录 题目描述思路分析完整代码 题目描述 0,1,,n-1这n个数字排成一个圆圈&#xff0c;从数字0开始&#xff0c;每次从这个圆圈里删除第m个数字&#xff08;删除后从下一个数字开始计数&#xff09;。求出这个圆圈里剩下的最后一个数字。 例如&#xff0c;0、1、2、3、4这5个…

Spring框架之AOP详解【面向切面技术完成日志及事物管理】

目录 一、前言 1.1.Spring简介 1.2.使用Spring的优点 二、Spring之AOP详解 2.1.什么是AOP 2.2.AOP在Spring的作用 2.3.AOP案例讲解 三、AOP案例实操 3.0.代理小故事&#xff08;方便理解代理模式&#xff09; 3.1.代码演示 3.2.前置通知 3.3.后置通知 3.3.环绕通知…

红外激光测量——镀金积分球

积分球是具有高反射性内表面的空心球体。它主要用来对处于球内或放在球外并靠近某个窗口处的试样对光的散射或发射&#xff0c;或是光源本身发出的光进行收集的一种GX率器件。能够用来对材料的光学反射透射性能&#xff0c;光源的辐射度、亮度或色度等做一些精确的测量。 显然…

169. 多数元素(摩尔投票法) 题解

题目描述&#xff1a;169. 多数元素 - 力扣&#xff08;LeetCode&#xff09; 给定一个大小为 n 的数组 nums &#xff0c;返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的&#xff0c;并且给定的数组总是存在多数元素。 示…

电力识读图解(电力系统、电力网、电力系统电路图)

一、电力系统和电力网 世界上大部分国家的动力资源和电力负荷中心分布是不一致的。 如水力资源都是集中在江河流域水位落差较大的地方;燃料资源集中在煤、 石油、天燃气的矿区; 大电力负荷中心则多集中在工业区和大城市&#xff0c;因而发电厂和负荷中心往往相隔很远的距离&am…

学习红外成像仪开发注意要点

学习红外成像仪开发注意要点 三河凡科科技飞讯红外成像仪开发学习注意要点 红外成像仪是一种高级的光学设备&#xff0c;可用于探测、分析和显示红外辐射&#xff0c;它广泛应用于医学、军事、石油、矿产资源勘探等领域。红外成像仪的开发需要注意以下几个方面&#xff1a; 1…