我想通过使用java.lang.Class
阅读其源文件来获取class
的{{1}}个对象。
实际上我希望通过使用FileReader
选择其源文件来获取该类的所有methods, constructors, parent class, overridden methods and imported packages
。所以,我认为我通过使用JFileChooser
等类Class
对象方法得到了所有这些东西。
我试过这个,但它给了getConstructors()
...
java.lang.ClassNotFoundException
答案 0 :(得分:4)
从.class文件加载类,而不是.java文件。您有两种选择:
1)使用不同的API,例如AST解析,用于读取和理解.java文件(但不执行其中的代码)
2)以编程方式编译.java文件,然后读取.class文件。这是丑陋的,不稳定的,可怕的,充满警告,可能不是你想做的事。