Hallo,
ich lese gerade das Buch "Java ist auch eine Insel" und wollte folgende Klasse ausprobieren aber leider habe ich keine Ahnung von ClassLoaders.
Class c = Class.forName("LightedPushButton.build.classes"); -> welchen Pfad muss ich hier angeben, irgendeinen auf meinem Computer oder einen Pfad in einem bestimmten Verzeichnis oder iwe geht das?
herzlichen Dank für Antworten!!
lg
Michl
ich lese gerade das Buch "Java ist auch eine Insel" und wollte folgende Klasse ausprobieren aber leider habe ich keine Ahnung von ClassLoaders.
Class c = Class.forName("LightedPushButton.build.classes"); -> welchen Pfad muss ich hier angeben, irgendeinen auf meinem Computer oder einen Pfad in einem bestimmten Verzeichnis oder iwe geht das?
herzlichen Dank für Antworten!!
lg
Michl
Code:
import java.net.*;
public class FindClassLocation {
static String findLocation(Class clazz)
{
ClassLoader loader = clazz.getClassLoader();
if (loader == null)
return null;
URL url = loader.getResource(clazz.getName().replace('.', '/') + ".class");
return (url != null) ? url.toString() : null;
}
public static void main (String[] args) throws Exception
{
Class c = Class.forName("LightedPushButton.build.classes");
System.out.println("Class: " + c.getName());
System.out.println("Filename: " + findLocation(c));
}
}