對java中路徑的一些理解(java中路徑表示方法)

  • 1、JAVA中path和classpath具體是什麼意思?
  • 2、JAVA的配置路徑是什麼?
  • 3、java類路徑到底指的是什麼?
  • 4、java中的路徑和絕對路徑有什麼區別—
  • 5、誰知道Java中的類路徑是什麼?
  • 6、Java怎麼理解文件的目錄路徑,絕對路徑,父級路徑,文件對象。。。好亂啊5555555

首先得了解操作系統中的環境變數

環境變數

環境變數相對於給系統或用戶應用程序設置的一些變數, 具體起什麼作用這當然和具體的環境變數相關. 象path, 是告訴系統, 當要求系統運行一個程序而沒有告訴它程序所在的完整路徑時, 系統除了在當前目錄下面尋找此程序外, 還應到那些目錄下去找; 再象tc或bc++中, set include=path1;path2; 是告訴編譯程序到哪裡去找.h類型的文件; 當然不僅僅是指定什麼路徑, 還有其它的作用的, 象 set dircmd=/4 設置一個環境變數的作用是在使用dir命令是會把/4最為預設的參數添加到你的dir命令之後, 就象你的每個命令都加了/4參數, 它實際上是給命令解釋程序command設置的一個環境變數還是給dir這個內部命令設置的。

DWORD GetEnvironmentVariable(LPCSTR lpName, LPSTR lpBuffer, DWORD dSize), 參數lpName是你要求查詢的環境變數的名, lpBuffer是返回你所指定的環境變數的值的, dSize是告訴這個函數lpBuffer可以存放多少個位元組.

其次就是你的問題

Windows下JAVA用到的環境變數主要有3個,JAVA_HOME、CLASSPATH、PATH。下面逐個分析。

JAVA_HOME指向的是JDK的安裝路徑,如x:\JDK_1.4.2,在這路徑下你應該能夠找到bin、lib等目錄。值得一提的是,JDK的安裝路徑可以選擇任意磁碟目錄,不過建議你放的目錄層次淺一點,如果你放的目錄很深,比如x:\XXXXXX\xxxxx\XXXX\xxxx\XXXX\xxxx\XXXX\xxx……

那麼,下面的步驟和以後的應用你都要受累了,呵呵。設置方法:

JAVA_HOME=x:\JDK_1.4.2

PATH環境變數原來Windows裡面就有,你只需修改一下,使他指向JDK的bin目錄,這樣你在控制台下面編譯、執行程序時就不需要再鍵入一大串路徑了。設置方法是保留原來的PATH的內容,並在其中加上%JAVA_HOME%\bin

(注,如果你對DOS批處理不了解,你可能不明白%%引起來的內容是什麼意思;其實這裡是引用上一步設定好的環境變數JAVA_HOME,你寫成x:\JDK_1.4.2也是可以的;你可以打開一個控制台窗口,輸入echo

%JAVA_HOME%來看一下你的設置結果) :

PATH=%JAVA_HOME%\bin;%PATH%

同樣,%PATH%是引用以前你設置的PATH環境變數,你照抄以前的值就行了。

CLASSPATH環境變數我放在最後面,是因為以後你出現的莫名其妙的怪問題80%以上都可能是由於CLASSPATH設置不對引起的,所以要加倍小心才行。

CLASSPATH=.\;%JAVA_HOME%\lib\tools.jar

首先要注意的是最前面的”.\;”,如果你看不清,我給你念念——句點反斜杠分號。這個是告訴JDK,搜索CLASS時先查找當前目錄的CLASS文件——為什麼這樣搞,這是由於LINUX的安全機制引起的,LINUX用戶很明白,WINDOWS用戶就很難理解(因為WINDOWS默認的搜索順序是先搜索當前目錄的,再搜索系統目錄的,再搜索PATH環境變數設定的)

,所以如果喜歡盤根究底的朋友不妨研究一下LINUX。

為什麼CLASSPATH後面指定了tools.jar這個具體文件?不指定行不行?顯然不行,行的話我還能這麼羅索嘛!:)

這個是由java語言的import機制和jar機制決定的,你可以查資料解決。

呵呵,具體的設定方法: win2k\xp用戶右鍵點擊我的電腦-屬性-高級-環境變數,修改下面系統變數那個框里的值就行了。

win9x用戶修改autoexec.bat文件,在其末尾加入:

set JAVA_HOME=x:\JDK_1.4.2

set PATH=%JAVA_HOME%\bin;%PATH%

set CLASSPATH=.\;%JAVA_HOME%\lib\tools.jar

JDK環境變數配置的步驟如下:

1.我的電腦–屬性–高級–環境變數.

2.配置用戶變數:

a.新建 JAVA_HOME

C:\Program Files\Java\j2sdk1.5.0 (JDK的安裝路徑)

b.新建 PATH

  %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

c.新建 CLASSPATH

  .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar

3.測試環境變數配置是否成功:

 開始–運行–〉CMD

 鍵盤敲入: JAVAC JAVA

出現相應的命令,而不是出錯信息,即表示配置成功!

環境變數配置的理解:

1. PATH環境變數。作用是指定命令搜索路徑,在i命令行下面執行命令如javac編譯java程序時,它會到PATH變數所指定的路徑中查找看是否能找到相應的命令程序。我們需要把jdk安裝目錄下的bin目錄增加到現有的PATH變數中,bin目錄中包含經常要用到的可執行文件如javac/java/javadoc等待,設置好PATH變數後,就可以在任何目錄下執行javac/java等工具了。

2. CLASSPATH環境變數。作用是指定類搜索路徑,要使用已經編寫好的類,前提當然是能夠找到它們了,JVM就是通過CLASSPTH來尋找類的。我們需要把jdk安裝目錄下的lib子目錄中的dt.jar和tools.jar設置到CLASSPATH中,當然,當前目錄「.」也必須加入到該變數中。

3. JAVA_HOME環境變數。它指向jdk的安裝目錄,Eclipse/NetBeans/Tomcat等軟體就是通過搜索JAVA_HOME變數來找到並使用安裝好的jdk。

類路徑是該類所在的地址,也就是該類所在位置的包名,也叫完整類名。因為包的特性,Java允許在不同包中存在名稱一樣的類,如果不指明路徑的話,編譯器就無法找到正確的類,所以必須指明路徑

絕對路徑:

絕對路徑就是你的主頁上的文件或目錄在硬碟上真正的路徑,(URL和物理路徑)例如:

C:\xyz\test.txt 代表了test.txt文件的絕對路徑。也代表了一個URL絕對路徑。

相對路徑:

相對與某個基準目錄的路徑。包含Web的相對路徑(HTML中的相對目錄),例如:在

Servlet中,”/”代表Web應用的根目錄。和物理路徑的相對表示,例如:”./” 代表當前目錄,

“../”代表上級目錄。這種類似的表示,也是屬於相對路徑。

Java 類路徑告訴 java 解釋器和 javac 編譯器去哪裡找它們要執行或導入的類。類(您可能注意到的那些 *.class 文件)可以存儲在目錄或 jar 文件中,或者存儲在兩者的組合中,但是只有在它們位於類路徑中的某個地方時,Java 編譯器或解釋器才可以找到它們。

在 Windows 中,類路徑中的多個項是用分號分隔( ;)的,而在 UNIX 中,這些項是用冒號分隔(:)的。

這裡我以調用一個JAR文件為例,來說明Java類路徑的作用

1、直接在命令行中運行JAR文件的主類,這是會提示找不到主類。這時就需要我們配置路路徑之後再運行該Jar文件

如在命令行輸入 java com.miaomiaoxue.olivepress.Main(這時歐文們要運行的Jar文件主類路徑)。這時會彈出提示信息找不到主類

2、配置類路徑,這裡介紹了兩種在命令行中配置類路徑的方式

•第一步,在命令窗口中配置類路徑:set CLASSPATH =.;JAR文件的全名

3、配置類類路徑後我們在在命令行中運行

java com.miaomiaoxue.olivepress.Main這時就顯示運行成功的結果。

這些都是Java中的基礎知識,如果你想更加詳細的了解相關知識,你可以到秒秒學的網站上找到相應的課程。

假如有一個c盤有一個文件夾叫testDir,這個文件夾中的有一個文件test.txt。

絕對路徑是指從盤符開始開始的路徑,例如c:\testDir\test.txt。

父級路徑指某文件或文件夾的上級目錄,例如test.txt的父級路徑指c:\testDir。

java的文件對象指的是File類的對象,這是java對文件操作的封裝。一個文件對象可以指向一個文件也可以指向一個文件夾

原創文章,作者:簡單一點,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/126743.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
簡單一點的頭像簡單一點
上一篇 2024-10-03 23:12
下一篇 2024-10-03 23:12

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean載入過程

    Java Bean載入過程涉及到類載入器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean載入的過程。 一、類載入器 類載入器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • 解決.net 6.0運行閃退的方法

    如果你正在使用.net 6.0開發應用程序,可能會遇到程序閃退的情況。這篇文章將從多個方面為你解決這個問題。 一、代碼問題 代碼問題是導致.net 6.0程序閃退的主要原因之一。首…

    編程 2025-04-29
  • ArcGIS更改標註位置為中心的方法

    本篇文章將從多個方面詳細闡述如何在ArcGIS中更改標註位置為中心。讓我們一步步來看。 一、禁止標註智能調整 在ArcMap中設置標註智能調整可以自動將標註位置調整到最佳顯示位置。…

    編程 2025-04-29
  • Python中init方法的作用及使用方法

    Python中的init方法是一個類的構造函數,在創建對象時被調用。在本篇文章中,我們將從多個方面詳細討論init方法的作用,使用方法以及注意點。 一、定義init方法 在Pyth…

    編程 2025-04-29
  • Python創建分配內存的方法

    在python中,我們常常需要創建並分配內存來存儲數據。不同的類型和數據結構可能需要不同的方法來分配內存。本文將從多個方面介紹Python創建分配內存的方法,包括列表、元組、字典、…

    編程 2025-04-29

發表回復

登錄後才能評論