我有一个公共(public)抽象类,我正在尝试使用 getClass()
方法,因为我需要来自扩展我的抽象类的类的信息。一个例子是这样的:
public String getName() {
return getClass().getSimpleName();
}
但是,IntelliJ 报告了这一点:
Ambiguous method call. Both
getClass () in Object and
getClass () in Object match.
代码运行良好,但在我的 IDE 中出现数十条错误警告对我来说有点不妥。它以很多误报扰乱了我的工作流程。
为什么会显示这些错误,我该怎么做才能看不到它们?
最佳答案
像这样将我的 getClass()
调用转换为 Object
((Object) this).getClass()
为我解决了问题(使用非抽象类)。 这不是很好,但它正在工作。
此外,从项目设置中操作您的 Android SDK 并从您的 Android SDK 中删除所有 JDK jar 可以解决该错误。当然,您必须在项目中引用它才能使用该修复程序。
关于java - 抽象类中的 getClass() 给出了不明确的方法调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10386264/