电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

Java類加載機(jī)制實(shí)現(xiàn)流程及原理詳解

瀏覽:68日期:2022-08-31 09:14:00

前言

我們知道,Java項(xiàng)目編譯后會生成許許多多的class文件,class文件保存著類的描述信息。虛擬機(jī)把描述類的數(shù)據(jù)從Class文件加載到內(nèi)存,并對數(shù)據(jù)進(jìn)行校驗(yàn)、轉(zhuǎn)化解析和初始化,最終形成可以被虛擬機(jī)直接使用的Java類型,這就是虛擬機(jī)的類加載機(jī)制。

類的生命周期

類從被加載到虛擬機(jī)內(nèi)存中開始,到卸載出內(nèi)存位置,他的整個(gè)生命周期包括:

加載驗(yàn)證準(zhǔn)備解析初始化使用卸載

這七個(gè)階段。畫個(gè)圖就是下面這樣:

Java類加載機(jī)制實(shí)現(xiàn)流程及原理詳解

其中,類加載的過程包括了加載、驗(yàn)證、準(zhǔn)備、解析、初始化這五個(gè)階段。其中加載、驗(yàn)證、準(zhǔn)備、初始化順序是固定的,解析可能在初始化之前也可能在初始化之后,為什么呢?因?yàn)镴ava支持運(yùn)行時(shí)綁定,也就是我們說的多態(tài),所以解析發(fā)生的時(shí)機(jī)不一定。

注意:按順序開始不一定是按順序結(jié)束,因?yàn)橛行╇A段執(zhí)行時(shí)間較長。

類加載過程

讓我們看一下類加載過程中,每一階段大概都做了什么事情!

讓我們看一下類加載過程中,每一階段大概都做了什么事情!

加載:查找并加載類的二進(jìn)制數(shù)據(jù)。 連接: 驗(yàn)證:確保被加載的類的正確性。 文件格式驗(yàn)證 元數(shù)據(jù)驗(yàn)證 字節(jié)碼驗(yàn)證 符號引用驗(yàn)證 準(zhǔn)備 為類的靜態(tài)變量分配內(nèi)存,并將其初始化為默認(rèn)值。  解析:把類中的符號引用轉(zhuǎn)換為直接引用。 初始化:為類的靜態(tài)變量賦予正確得到初始值,JVM負(fù)責(zé)對類進(jìn)行初始化,主要對類變量進(jìn)行初始化。

類加載器四種類加載器

JVM自帶了三種類加載器,依次為下面前三個(gè),如果有必要,我們還可以加入自定義的類加載器,實(shí)現(xiàn)更靈活的加載方式,比如從特定的場所取得java class,例如數(shù)據(jù)庫中和網(wǎng)絡(luò)中、動態(tài)創(chuàng)建類、自動驗(yàn)證數(shù)字簽名等等。

BootStrapClassLoader:啟動類加載器 加載(/JDK/JRE/LIB/ java.) ExtClassLoader:擴(kuò)展類加載器 加載(/JDK/JRE/LIB/EXT javax.) AppClassLoader:應(yīng)用類加載器 加載(ClassPath,自己寫的類) *ClassLoader:用戶自定義類加載器

他們存在層級關(guān)系,但是并不是通過繼承實(shí)現(xiàn)的,而是通過組合!如下圖:

Java類加載機(jī)制實(shí)現(xiàn)流程及原理詳解

雙親委派模型

如果一個(gè)類加載器收到了類加載的請求,它首先不會自己去嘗試加載這個(gè)類,而是把請求委托給父加載器去完成,依次向上,因此,所有的類加載請求最終都應(yīng)該被傳遞到頂層的啟動類加載器中,只有當(dāng)父加載器在它的搜索范圍中沒有找到所需的類時(shí),即無法完成該加載,子加載器才會嘗試自己去加載該類。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 泵阀展|阀门展|水泵展|流体机械展 -2025上海国际泵管阀展览会flowtech china | 武汉高低温试验箱_恒温恒湿试验箱厂家-武汉蓝锐环境科技有限公司 | 隧道风机_DWEX边墙风机_SDS射流风机-绍兴市上虞科瑞风机有限公司 | LED太阳能中国结|发光红灯笼|灯杆造型灯|节日灯|太阳能灯笼|LED路灯杆装饰造型灯-北京中海轩光电 | 车间除尘设备,VOCs废气处理,工业涂装流水线,伸缩式喷漆房,自动喷砂房,沸石转轮浓缩吸附,机器人喷粉线-山东创杰智慧 | 礼堂椅厂家|佛山市艺典家具有限公司| 石家庄装修设计_室内家装设计_别墅装饰装修公司-石家庄金舍装饰官网 | 深圳宣传片制作-企业宣传视频制作-产品视频拍摄-产品动画制作-短视频拍摄制作公司 | 石家庄律师_石家庄刑事辩护律师_石家庄取保候审-河北万垚律师事务所 | 烟台条码打印机_烟台条码扫描器_烟台碳带_烟台数据采集终端_烟台斑马打印机-金鹏电子-金鹏电子 | 气弹簧定制-气动杆-可控气弹簧-不锈钢阻尼器-工业气弹簧-可调节气弹簧厂家-常州巨腾气弹簧供应商 | 鼓风干燥箱_真空烘箱_高温干燥箱_恒温培养箱-上海笃特科学仪器 | 硫化罐_蒸汽硫化罐_大型硫化罐-山东鑫泰鑫智能装备有限公司 | 沥青灌缝机_路面灌缝机_道路灌缝机_沥青灌缝机厂家_济宁萨奥机械有限公司 | 沈阳建筑设计公司_加固改造设计_厂房设计_设计资质加盟【金辉设计】 | 丝印油墨_水性油墨_环保油墨油漆厂家_37国际化工 | 粉末包装机-给袋式包装机-全自动包装机-颗粒-液体-食品-酱腌菜包装机生产线【润立机械】 | 知企服务-企业综合服务(ZiKeys.com)-品优低价、种类齐全、过程管理透明、速度快捷高效、放心服务,知企专家! | 广州市哲铭油墨涂料有限公司,水性漆生产研发基地 | 废水处理-废气处理-工业废水处理-工业废气处理工程-深圳丰绿环保废气处理公司 | 阿里巴巴诚信通温州、台州、宁波、嘉兴授权渠道商-浙江联欣科技提供阿里会员办理 | 光纤测温-荧光光纤测温系统-福州华光天锐光电科技有限公司 | 福州仿石漆加盟_福建仿石漆厂家-外墙仿石漆加盟推荐铁壁金钢(福建)新材料科技有限公司有保障 | 旅游规划_旅游策划_乡村旅游规划_景区规划设计_旅游规划设计公司-北京绿道联合旅游规划设计有限公司 | 扬尘在线监测系统_工地噪声扬尘检测仪_扬尘监测系统_贝塔射线扬尘监测设备「风途物联网科技」 | SMN-1/SMN-A ABB抽屉开关柜触头夹紧力检测仪-SMN-B/SMN-C-上海徐吉 | 扒渣机,铁水扒渣机,钢水扒渣机,铁水捞渣机,钢水捞渣机-烟台盛利达工程技术有限公司 | 工业淬火油烟净化器,北京油烟净化器厂家,热处理油烟净化器-北京众鑫百科 | 汽车整车综合环境舱_军标砂尘_盐雾试验室试验箱-无锡苏南试验设备有限公司 | 全温恒温摇床-水浴气浴恒温摇床-光照恒温培养摇床-常州金坛精达仪器制造有限公司 | 塑料撕碎机_编织袋撕碎机_废纸撕碎机_生活垃圾撕碎机_废铁破碎机_河南鑫世昌机械制造有限公司 | 金库门,金库房,金库门厂家,金库门价格-河北特旺柜业有限公司 | 江苏皓越真空设备有限公司 | 紫外荧光硫分析仪-硫含量分析仪-红外光度测定仪-泰州美旭仪器 | TPE塑胶原料-PPA|杜邦pom工程塑料、PPSU|PCTG材料、PC/PBT价格-悦诚塑胶 | 基业箱_环网柜_配电柜厂家_开关柜厂家_开关断路器-东莞基业电气设备有限公司 | 礼仪庆典公司,礼仪策划公司,庆典公司,演出公司,演艺公司,年会酒会,生日寿宴,动工仪式,开工仪式,奠基典礼,商务会议,竣工落成,乔迁揭牌,签约启动-东莞市开门红文化传媒有限公司 | 东莞螺杆空压机_永磁变频空压机_节能空压机_空压机工厂批发_深圳螺杆空压机_广州螺杆空压机_东莞空压机_空压机批发_东莞空压机工厂批发_东莞市文颖设备科技有限公司 | 螺钉式热电偶_便携式温度传感器_压簧式热电偶|无锡联泰仪表有限公司|首页 | 5L旋转蒸发器-20L-50L旋转蒸发器-上海越众仪器设备有限公司 | 闭端端子|弹簧螺式接线头|防水接线头|插线式接线头|端子台|电源线扣+护线套|印刷电路板型端子台|金笔电子代理商-上海拓胜电气有限公司 |