Lassen Sie uns zunächst ein Konzept vorstellen, den Klassenpfad, der sich auf das Verzeichnis bezieht, in dem sich kompilierte Klassendateien, XML, Eigenschaften und andere Konfigurationsdateien befinden. Wenn es sich beispielsweise um ein Maven-Projekt handelt, lautet der Klassenpfad „Projektname/Ziel/Klassen“. Wenn es sich um ein normales Projekt handelt, kann es „Projektname/Bin“ oder „Projektname/Build/Klassen“ usw. sein .
getResource ist eine Methode von java.lang.Class, die vom Bytecode-Objekt aufgerufen wird.
(Empfohlenes Tutorial: Java Getting Started Program )
getResource akzeptiert einen String-Parameter. Wenn es mit „/“ beginnt, wird es im Stammverzeichnis von gefunden der Klassenpfad (keine Unterverzeichnisse rekursiv durchsuchen), wenn er nicht mit „/“ beginnt, suchen Sie in dem Verzeichnis, in dem sich das Bytecode-Objekt befindet, das getResource aufruft (das Unterverzeichnis wird nicht rekursiv durchsucht).
Beispiel:
@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")); }
Der erste Satz, Test1, befindet sich unter com.trs.javase, daher wird „xxx.com.trs.javase“ ausgegeben . Wenn es von Test2.class aufgerufen wird, wird „xxx.com.trs.javase.subpackage“ ausgegeben.
Der zweite Satz gibt das Stammverzeichnis des Klassenpfads aus.
Der dritte Satz gibt das Verzeichnis aus, in dem sich Test1.class befindet.
Der vierte Satz, Test1.class, befindet sich nicht im Stammverzeichnis des Klassenpfads, daher wird null ausgegeben.
Ausgabeergebnis:
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
(Empfohlenes Video-Tutorial: Java-Video-Tutorial)
Das obige ist der detaillierte Inhalt vonBeispiele für die Methode getResource() in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!