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

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

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

最佳答案

根据documentation


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


它还说:


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


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

关于java - getClassLoader()。getResource()和斜杠“/”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52239012/

10-12 05:47