我有一个奇怪的问题。
在我的Pc上,我有一个在多个地方使用@Override
的Android应用程序。当我在每个@Override
将同一个项目复制到我的笔记本电脑上时,我收到错误消息。
该方法必须覆盖超类方法。它如何在一台机器上运行而不在另一台机器上运行?
@Override
public boolean OnMenuItemClick(Menu Item){
}
答案 0 :(得分:3)
很可能您的编译器合规性级别设置为1.5,应设置为1.6。 转到窗口 - >偏好 - > Java - >编译并检查合规性级别是否设置为1.6。 还要检查项目特定设置,右键单击项目并选择Properties - > Java编译器。如果启用了项目特定设置,请选择1.6。
清理项目并重试。
答案 1 :(得分:1)
尝试转到Window - >偏好 - > Java - >编译器 - >错误/警告,查找您的案例(关于覆盖)并从笔记本电脑的下拉菜单中选择“忽略”
可能有一些配置显示错误
答案 2 :(得分:0)
两台计算机上是否有相同版本的Java SDK,Android SDK和库?您可以覆盖尚未在PC的Java或Android或其他库版本上实现的方法。
答案 3 :(得分:0)
注释@Override
表示方法声明旨在覆盖方法 在超类中声明。如果方法用此注释 注释类型但不覆盖超类方法,编译器 需要生成错误消息。
此外,从版本1.6开始,此注释也用于为接口实现的方法。
可能你在机器上有不同版本的SKD,显示错误的原因。您应该修改代码并找出遗漏的内容,而不是删除警告。