Java中的類加載器

?類加載器

1.什么是類加載器?

  1. 啟動類加載器(Bootstrap ClassLoader):這是JVM自帶的類加載器,負責加載Java的核心類庫,如rt.jar等。由于安全原因,啟動類加載器加載的類不能被其他類加載器加載的類所引用。
  2. 擴展類加載器(Extension ClassLoader):負責加載Java的擴展類庫,一般位于$JAVA_HOME/jre/lib/ext目錄下。
  3. 系統類加載器(System ClassLoader):也稱為應用類加載器(Application ClassLoader),它負責加載應用程序的類路徑(classpath)下的所有類。
  4. 自定義類加載器:開發者可以通過繼承java.lang.ClassLoader類來自定義類加載器,以滿足特殊需求,如熱部署、代碼加密等。

2.什么是雙親委派機制?

????????Java的類加載器采用雙親委派模型(Parent Delegation Model)。

????????當一個類加載器收到類加載請求時,它首先不會自己去嘗試加載這個類,而是把這個請求委派給父類加載器去完成。每一個層次的類加載器都是如此,因此所有的加載請求最終都應該傳送到頂層的啟動類加載器中。只有當父類加載器無法完成這個加載請求(它的搜索范圍中沒有找到所需的類)時,子類加載器才會嘗試自己去加載。

舉個例子:如圖

????????1.Student類:這是一個我們自己加載的類。一開始準備在AppClassLoader加載,但它先不加載,它委托給它的上級加載器ExtClassLoader加載,然后ExtClassLoader繼續向上委托。但Student類不在JAVA_HOME/jre/lib目錄或JAVA_HOME/jre/lib/ext目錄下,因此這兩個加載器都不會加載Student類。這時候才會由AppClassLoader加載。

? ? ? ? 2.String類:同上,它會從AppClassLoader一路向上委托,因為String類在JAVA_HOME/jre/lib目錄中,因此BootStrapClassLoader就會加載String類。

JVM為什么采用雙親委派機制?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/16588.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/16588.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/16588.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

數據庫(8)——DML數據操作

增添數據 給指定字段添加數據 INSERT INTO 表名 (字段名1,字段名2,...)VALUES(值1,值2...); 沒有的添加的字段默認為NULL。 給全部字段添加數據 INSERT INTO 表名 VALUE (值1,值2,....值n); 此時值的順序對應表中字段的順序 批量添加數據 INSERT INTO 表名(字段1,…

ssm143校園一卡通系統軟件的設計與實現+jsp

校園一卡通系統設計與實現 摘 要 現代經濟快節奏發展以及不斷完善升級的信息化技術,讓傳統數據信息的管理升級為軟件存儲,歸納,集中處理數據信息的管理方式。本校園一卡通系統就是在這樣的大環境下誕生,其可以幫助管理者在短時間…

聊聊變異測試

軟件質量保障 所寫即所思|一個阿里質量人對測試的所感所悟。 1. 介紹 有句話說:證實容易,證偽難。正如測試一樣,證明缺陷存在容易,但證明不存在缺陷難。而變異測試顛覆了這一原則,如果我們知道存在缺陷&am…

2024-5-26

今日安排: 后面還是按照安排來了,CTF 真不是我能玩的… 重新開始審計 nf_tables 源碼,并在審計的過程中復現歷史漏洞【 && iptables 相關學習】?????實驗報告 ?????復現 CTF 相關題目????學習 winpwn????mount 的…

CAD二次開發(6)-用戶交互之選擇集

1. 簡單測試 測試讓選中的圖形描紅 [CommandMethod("SeleDemo")]public void SeleDemo(){Database db HostApplicationServices.WorkingDatabase;Editor ed Application.DocumentManager.MdiActiveDocument.Editor;PromptSelectionResult psr ed.GetSelection();…

如何學到數據庫從入門到入土(MySQL篇)

本篇會加入個人的所謂魚式瘋言 ??????魚式瘋言:??????此瘋言非彼瘋言 而是理解過并總結出來通俗易懂的大白話, 小編會盡可能的在每個概念后插入魚式瘋言,幫助大家理解的. 🤭🤭🤭可能說的不是那么嚴謹.但小編初心是能讓更多人能接…

mars3d的V2版本的Video2D與V3版本的Video2D實現數據快速遷移

場景: 目前是v2和v3的兩個相機視角的不同格式,在Mars3d的V2的舊數據想可以快速遷移到V3版本。 V2版本的數據: {"camera": {"fov": 1.0471975511965976,"dis": 20,"stRotation": 0,"showFrust…

基于小波分析和機器學習(SVM,KNN,NB,MLP)的癲癇腦電圖檢測(MATLAB環境)

癲癇是一種由大腦神經元突發性異常放電導致的大腦功能性障礙疾病。據世界衛生組織統計,全球約有7000萬人患有癲癇。癲癇患者在發病時呈現肌肉抽搐、呼吸困難、意識喪失等癥狀。由于癲癇發作的偶然性,患者極有可能在高空、駕駛、游泳等危險情況下發病并喪…

2024最新 Jenkins + Docker實戰教程(二) - Jenkins相關配置

😄 19年之后由于某些原因斷更了三年,23年重新揚帆起航,推出更多優質博文,希望大家多多支持~ 🌷 古之立大事者,不惟有超世之才,亦必有堅忍不拔之志 🎐 個人CSND主頁——Mi…

異常有什么,異常類有什么

在Java中,異常(Exception)是一種在程序運行過程中出現的不正常情況。異常機制提供了一種從錯誤中恢復的途徑。異常分為兩大類:檢查異常(Checked Exception)和運行時異常(Runtime Exception&…

C語言代碼錯誤(一)

今天在寫選擇排序代碼時&#xff0c;在測試數據發現不能顯示結果 1、代碼如下&#xff1a; #include <stdio.h>int main(void) {int i, j; // 循環變量int MinIndex; // 保存最小的值的下標int buf; // 互換數據時的臨時變量int n;printf("你想輸入多少個數據n:\n…

C++之lambda函數與std::bind區別及用法實例(二百八十)

簡介&#xff1a; CSDN博客專家&#xff0c;專注Android/Linux系統&#xff0c;分享多mic語音方案、音視頻、編解碼等技術&#xff0c;與大家一起成長&#xff01; 優質專欄&#xff1a;Audio工程師進階系列【原創干貨持續更新中……】&#x1f680; 優質專欄&#xff1a;多媒…

202212青少年軟件編程(Python)等級考試試卷(四級)

第 1 題 【單選題】 有n個按名稱排序的商品,使用對分查找法搜索任何一商品,最多查找次數為 5 次, 則 n 的值可能為?() A :5 B :15 C :30 D :35 正確答案:C 試題解析: 對分查找最多查找次數m與個數之間 n 的關系是: n 對 2 的對數的取整后加 1,現在最多查找次數是…

LabVIEW如何實現多張圖拼接

在LabVIEW中實現相機多次拍攝進行拼接的過程&#xff0c;可以分為以下幾個步驟&#xff1a;設置相機參數、控制相機拍攝、圖像處理與拼接、顯示和保存結果。以下是一個詳細的實現方案&#xff1a; 1. 設置相機參數 首先需要配置相機的參數&#xff0c;例如分辨率、曝光時間、…

Java Swing + MySQL圖書借閱管理系統

系列文章目錄 Java Swing MySQL 圖書管理系統 Java Swing MySQL 圖書借閱管理系統 文章目錄 系列文章目錄前言一、項目展示二、部分代碼1.Book2.BookDao3.DBUtil4.BookAddInternalFrame5.Login 三、配置 前言 項目是使用Java swing開發&#xff0c;界面設計比較簡潔、適合作…

Qt中信號和槽解決了什么問題

信號和槽解決了什么問題 Qt 中的信號和槽機制是一種用于處理對象之間通信的重要機制,它解決了以下幾個問題: 對象之間的解耦(Decoupling): 問題: 在一個系統中,如果對象之間直接調用彼此的方法,就會形成緊密耦合的結構。這樣的耦合使得對象難以獨立地變更和維護,而且…

react-d3-tree:React組件創建交互式D3樹形圖

在這里插入代碼片import React from "react"; import ReactDOM from "react-dom"; import Tree from "react-d3-tree";import "./styles.css";const myTreeData [{name: "Gaurang Torvekar",attributes: {keyA: "val …

【軟考】2024年5月系統架構設計師考試感受

一 考試時間 5???25日上午: 8點30-12點30: 綜合知識和案例分析?? 5???25日下午: 14點30-16點30: 論文?? 二 考試感受 2024年5月25日早上5點多一點,我就起床了????。簡單洗漱后,就準備出門。可是,天吶,我的手機??忘記充電了,所以就趕緊應急充會電??…

基于Llama 3搭建中文版(Llama3-Chinese-Chat)大模型對話聊天機器人

前面兩篇博文&#xff0c;我們分別在個人筆記本電腦部署了Llama 3 8B參數大模型&#xff0c;并使用Ollama搭建了基于 Web 可視化對話聊天機器人&#xff0c;可以在自己電腦上愉快的與Llama大模型 Web 機器人對話聊天了。但在使用過程中&#xff0c;筆者發現Llama大模型經常出現…

匯編一:匯編語言前的基礎知識

計算機的工作原理就是取址執行,在哪兒執行呢,在cpu里面執行,從哪里面去取址呢?從內存中去取址,內存又被叫做存儲器 可是,cpu和存儲器是2個分開的硬件設備,那么是怎么做到把存儲器里面的東西傳給cpu呢,這就需要總線了 1.總線 總線一共可以分為3種, 一種是數據總線,一種是控制總…