listMethodNames方法改成下边这样。
--------------------------------------------------------------------------------------------------------------
public void listMethodNames(String filename, String packageName) {
try {
String name = filename.substring(0, filename.length() - 5);
Object obj = Class.forName(packageName + name).newInstance();
if (!(obj instanceof JFrame)) {
return;
}
Method[] methods = obj.getClass().getDeclaredMethods();
System.out.println(filename);
for (int i = 0; i < methods.length; i++) {
System.out.println("\t" + methods[i].getName());
}
} catch (Exception e) {
System.out.println("exception = " + e.getLocalizedMessage());
}
}
结果如下。
------------------------------------------------------------------------------------------------------------------
App.java
main
AppFrame.java
main
componentHidden
componentMoved
componentResized
componentShown