First of all, let’s introduce a concept, classpath, which refers to the directory where compiled class files, xml, properties and other configuration files are located. For example, if it is a maven project, the classpath is "project name/target/classes". If it is a normal project, it may be "project name/bin", or "project name/build/classes", etc.
getResource is a method of java.lang.Class, which is called by the bytecode object.
(Recommended tutorial: java introductory program)
getResource accepts a string parameter. If it starts with "/", it will be found in the root directory of the classpath (no Search subdirectories recursively), if it does not start with "/", search in the directory where the bytecode object that calls getResource is located (the subdirectory will not be searched recursively).
Example:
@Test public void test() { System.out.println(Test1.class.getResource("")); System.out.println(Test1.class.getResource("/")); System.out.println(Test1.class.getResource("Test1.class")); System.out.println(Test1.class.getResource("/Test1.class")); }
The first sentence, Test1 is under com.trs.javase, so "xxx.com.trs.javase" will be output. If it is called by Test2.class, "xxx.com.trs.javase.subpackage" will be output.
The second sentence will output the root directory of the classpath.
The third sentence will output the directory where Test1.class is located.
The fourth sentence, Test1.class is not in the root directory of the classpath, so null will be output.
Output result:
file:/D:/eclipse-workspace/javase/bin/com/trs/javase/ file:/D:/eclipse-workspace/javase/bin/ file:/D:/eclipse-workspace/javase/bin/com/trs/javase/Test1.class null
(Video tutorial recommendation: java video tutorial)
The above is the detailed content of Examples of the getResource() method in java. For more information, please follow other related articles on the PHP Chinese website!