在java中加载特定类文件
我有一个包含很多类文件的目录。其中一些文件以名称开头在java中加载特定类文件,java,Java,我有一个包含很多类文件的目录。其中一些文件以名称开头 test\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu??我可以使用某种正则表达式吗?如果您的类位于类路径中,您可以尝试获取所有的类名并加载它们 String packageName = "some.name"; File dir = new File("/Path/to/your/clas
test\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu??我可以使用某种正则表达式吗?如果您的类位于类路径中,您可以尝试获取所有的类名并加载它们
String packageName = "some.name";
File dir = new File("/Path/to/your/classes/some/name");
String [] classes = dir.list( new FilenameFilter(){
public boolean accept( File dir, String name ) {
return name.matches("test.*\\.class");
}
}
for( String name: classes ) {
Class.forName( packageName + name );// load them
}
如果不是,您可以使用
URLClassloader
加载它们。您可以读取目录以获取类列表并对其进行筛选
你想怎么都行。然后可以实例化所需的类,但是
当然,您必须使用一些接口,而不是类名本身,
作为调用类的方法的钩子
如果您不想处理读取和解析目录的问题,您可以
只需将测试类列表嵌入小程序或命令行参数中。等一下,“仅在其他java程序中加载这些类”是什么意思?一旦你装上它们,你打算怎么处理它们?