getClassLoader()。getResource()和斜杠“ /”

时间:2018-09-08 20:09:07

标签: java

getClassLoader()。getResource(“ sample.txt”)

我知道在Java中,以上语句尝试从bin或WEB-INF / classs或构建的构建路径中读取文件。但是,如果我在sample.txt之前保留“ /”,例如下面的语句,它将从哪里尝试读取文件?

getClassLoader()。getResource(“ / sample.txt”)

1 个答案:

答案 0 :(得分:1)

根据documentation

  

如果名称以'/'开头('\ u002f'),则资源的绝对名称是名称中位于'/'之后的部分。

它也说:

  

查找具有给定名称的资源。搜索与给定类关联的资源的规则由该类的定义类加载器实现。该方法委托给该对象的类加载器。如果此对象是由引导类加载器加载的,则该方法将委托给ClassLoader.getSystemResource(java.lang.String)。

因此它将根据您引用的类加载器进行委派。