首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Java Class.getResource() 方法理解:從類路徑加載資源的標準方式

     編輯:程式設計綜合問答

方法簽名


URL getResource(String name)

參數路徑規則

  • 以 '/' 開頭:從 類路徑根目錄** 絕對路徑查找。
    如 /img.jpg 對應 classpath:img.jpg。
  • 不以 '/' 開頭:從 當前類所在包目錄** 相對路徑查找。
    如 com.example.MyClass 調用 getResource("img.jpg") 查找 com/example/img.jpg。

代碼解析


URL resource = this.getClass().getResource("/img.JPG");
// 等價於
URL resource = MyClass.class.getResource("/img.JPG");

獲取類路徑根目錄下 img.JPG 的 URL 對象,可用於 ImageIO.read(resource)、new ImageIcon(resource) 等。

常見坑點

  • 資源文件未編譯到輸出目錄(Maven 放在 src/main/resources,Gradle 同理)。
  • 打包成 JAR 後路徑依然有效,因為類加載器支持 JAR 內資源訪問。
  • 返回 null 表示未找到,需檢查路徑大小寫(Linux 區分大小寫)。

最佳回答

我問的是這條語句如何理解,而不是問路徑怎麼設置

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved