我想实现根据一个类名的简称,找出所有与该类名简称相同的类名的全称列表,如何实现?如:
com.p1.A.class,com.p2.A.class这两个类在我的工程classpath和类加载范围内。
则 function List func(String shortName){
//do something.....
}
当shortname="A"时,得出list结果为:
com.p1.A
com.p2.A
com.p1.A.class,com.p2.A.class这两个类在我的工程classpath和类加载范围内。
则 function List func(String shortName){
//do something.....
}
当shortname="A"时,得出list结果为:
com.p1.A
com.p2.A
但是反射能做的是取一个类的属性、方法、构造函数、描述等,
或者才用invoke函数动态地执行类的方法。其实我就是搞不明白eclipse里的alt+/的智能编程提示是如何实现的。
我想做一个小工具类似该功能,方便嵌入到今后的系统开发和调试中,
这样的话,很容易列出包含A这个类所有相关的类名,以及其所在的资源路径。利用Java的反射,我已经实现:根据类的全路径找到该类所在的物理路径地址。
现在就差前面提出的那个问题了。高手帮忙一下,谢谢
关于如何找到jar/zip这怎么实现找到的,希望有人能回答下 public static void main(String[] args) throws CloneNotSupportedException {
String[] tests = { "com.test.A.class", "sun.util.C.class",
"java.text.A.class","java.sql.text.A.class"};
String name = "A";
StringBuffer sb = new StringBuffer(".*\\.");
sb.append(name);
sb.append("\\.class$");
Pattern p = Pattern.compile(new String(sb));
System.out.println(p);
for (String test : tests) {
Matcher m = p.matcher(test);
if (m.matches()) {
System.out.println(test);
}
}
}