国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

玩轉Java的CLASSPATH(一)Classpath基礎

2019-11-17 06:10:38
字體:
來源:轉載
供稿:網友
 摘要:
  ===================================
  從表面上看,java的classpath(類路徑)很簡單,但一直以來它都是一個產生問題和混亂的根源。本文介紹classpath的基本知識、可能產生的問題,并提供了一個簡單的classpath治理工具。
  ===================================
  正文:
  ===================================

  和Java類路徑(classpath)打交道的過程中,開發者偶然會碰到麻煩。這是因為,類裝載器實際裝入的是哪一個類有時并不顯而易見,當應用程序的classpath包含大量的類和目錄時,情況尤其嚴重。本文將提供一個工具,它能夠顯示出被裝入類文件的絕對路徑名。

一、Classpath基礎

  Java虛擬機(JVM)借助類裝載器裝入應用程序使用的類,具體裝入哪些類根據當時的需要決定。CLASSPATH環境變量告訴類裝載器到哪里去尋找第三方提供的類和用戶定義的類。另外,你也可以使用JVM命令行參數-classpath分別為應用程序指定類路徑,在-classpath中指定的類路徑覆蓋CLASSPATH環境變量中指定的值。

  類路徑中的內容可以是:文件的目錄(包含不在包里面的類),包的根目錄(包含已打包的類),包含類的檔案文件(比如.zip文件或者.jar文件)。在Unix家族的系統上,類路徑的各個項目由冒號分隔,在MS Windows系統上,它們由分號分隔。

  類裝載器以委托層次的形式組織,每一個類裝載器有一個父類裝載器。當一個類裝載器被要求裝載某個類時,它在嘗試自己尋找類之前會把請求先委托給它的父類裝載器。系統類裝載器,即由安裝在系統上的JDK或JRE提供的默認類裝載器,通過CLASSPATH環境變量或者-classpath這個JVM命令行參數裝入第三方提供的類或者用戶定義的類。系統類裝載器委托擴展類裝載器裝入使用Java Extension機制的類。擴展類裝載器委托自舉類裝載器(bootstrap class loader)裝入核心JDK類。

  你可以自己開發非凡的類裝載器,定制JVM如何動態地裝入類。例如,大多數Servlet引擎使用定制的類裝載器,動態地裝入那些在classpath指定的目錄內發生變化的類。

  必須非凡注重的是(也是令人吃驚的是),類裝載器裝入類的次序就是類在classpath中出現的次序。類裝載器從classpath的第一項開始,依次檢查每一個設定的目錄和壓縮文件,嘗試找出待裝入的類文件。當類裝載器第一次找到具有指定名字的類時,它就把該類裝入,classpath中所有余下的項目都被忽略。

  看起來很簡單,對吧?


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 信阳市| 南城县| 青冈县| 卓尼县| 新宁县| 海阳市| 河源市| 五华县| 司法| 汝城县| 岳池县| 龙山县| 离岛区| 灌阳县| 涪陵区| 珠海市| 四川省| 德令哈市| 宜兴市| 上饶市| 宁武县| 全南县| 定襄县| 张北县| 安国市| 德州市| 赞皇县| 巴塘县| 濮阳市| 彰化县| 仲巴县| 淮南市| 岚皋县| 潜山县| 田阳县| 朝阳市| 新建县| 廊坊市| 叙永县| 靖州| 安吉县|