java Class.getDeclaredMethods 似乎显示已被删除的方法

标签 java reflection

我使用以下代码来打印类的方法:

for (Method meth : c.getDeclaredMethods())
{
  System.out.println("  " + shorten(meth.toGenericString()));
}

当它在我选择的类上运行时,它会打印我的类的当前方法,以及我曾经拥有但已删除的一些方法。我的 IDE (netbeans 7.2) 中的导航器不显示旧方法。这些方法都没有被标记为桥接或合成。

java 编译器是否以某种方式保留历史记录?

最佳答案

编译器不会,IDE (netbeans) 也不应该。您很可能已经从仍然存在的较旧的 .java 文件构建了 .class 文件。尝试进行干净的构建(在再次构建之前删除所有 .class 文件)并查看问题是否仍然存在。

关于java Class.getDeclaredMethods 似乎显示已被删除的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12792068/

相关文章:

java - 在现有代码中添加/删除某些代码的设计/模式应该是什么

java - 如何使用 -e 开关从 eclipse 运行 maven

java - 动态调整 JPanel 的大小

javascript - 注释javascript函数参数?

java - 多维数组 错误 inderoutofbounds

java - 我有 Netbeans 8.1,它仅支持 C/C++,并且支持 java。

java - Spring ReflectionTestUtils 未设置静态最终字段

java - 在java中使用反射api解析xml

reflection - 在运行时解析传递给函数的结构

c# - 如何连接两个异常?