相关疑难解决方法(0)

将项目导入Eclipse后,"必须覆盖超类方法"错误

任何时候我必须将我的项目重新导入Eclipse(如果我重新安装Eclipse,或者更改了项目的位置),几乎所有重写的方法都没有正确格式化,导致错误:

该方法必须覆盖超类方法

值得注意的是,这是Android项目 - 无论出于何种原因,方法参数值并不总是填充,所以我必须自己手动填充它们.例如:

list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {

    //These arguments have their correct names
    public void onCreateContextMenu(ContextMenu menu, View v, 
                                    ContextMenuInfo menuInfo) {                 
    }

});
Run Code Online (Sandbox Code Playgroud)

最初将填充如下:

list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {

    //This methods arguments were not automatically provided    
    public void onCreateContextMenu(ContextMenu arg1, View arg2,
                                    ContextMenuInfo arg3) {
    }

});
Run Code Online (Sandbox Code Playgroud)

奇怪的是,如果我删除我的代码,并让Eclipse自动重新创建方法,它使用我已经拥有的相同参数名称,所以我真的不知道问题在哪里,除此之外它自动格式化方法我.

这需要手动重新创建所有重写的方法,这变得非常痛苦.如果有人能解释为什么会发生这种情况或如何解决它......我会非常高兴.

也许这是由于我格式化方法的方式,这是在另一个方法的参数内?

java eclipse android overriding superclass

1223
推荐指数
11
解决办法
25万
查看次数

我们应该@Override接口的方法实现吗?

是否应该使用实现接口方法的方法进行注释@Override

注释javadocOverride说:

指示方法声明旨在覆盖超类中的方法声明.如果使用此批注类型注释方法但不覆盖超类方法,则编译器需要生成错误消息.

我不认为接口在技术上是超类.或者是吗?

Question Elaboration

java oop annotations interface

414
推荐指数
7
解决办法
15万
查看次数

如何在Java中使用Comparator进行排序

我学会了如何使用比较器,但我对比较器有困难.我的代码中有错误:

Exception in thread "main" java.lang.ClassCastException: New.People cannot be cast to java.lang.Comparable
 at java.util.Arrays.mergeSort(Unknown Source)
 at java.util.Arrays.sort(Unknown Source)
 at java.util.Collections.sort(Unknown Source)
 at New.TestPeople.main(TestPeople.java:18)
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

import java.util.Comparator;

public class People implements Comparator {
   private int id;
   private String info;
   private double price;

   public People(int newid, String newinfo, double newprice) {
       setid(newid);
       setinfo(newinfo);
       setprice(newprice);
   }

   public int getid() {
       return id;
   }

   public void setid(int id) {
       this.id = id;
   }

   public String getinfo() {
       return info;
   }

   public void setinfo(String info) …
Run Code Online (Sandbox Code Playgroud)

java sorting comparator

163
推荐指数
6
解决办法
49万
查看次数

Java注释

Java中注释的目的是什么?我把这些模糊的想法放在评论和实际代码之间.它们是否在运行时影响程序?

它们的典型用法是什么?

它们是Java独有的吗?是否有C++等价物?

java glossary annotations

111
推荐指数
5
解决办法
3万
查看次数

Android @Override用法

(新手到Java,旧时代的C#家伙.)

我注意到@OverrideAndroid示例代码中有很多用处.我认为所有Java方法都默认为"虚拟"?

然后做@Override什么?

例:

private class HelloWebViewClient extends WebViewClient {

    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);
        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

java android overriding

67
推荐指数
3
解决办法
6万
查看次数

什么是Java中的@Override?

可能重复:
您何时使用Java的@Override注释?为什么?

@Override除了让编译器检查超类是否具有该方法之外,是否有任何理由使用其他方法来注释方法?

java overriding

58
推荐指数
3
解决办法
7万
查看次数

为什么javac在@Override注释上失败

当我实现接口的方法时,Eclipse正在添加@Override注释.Eclipse似乎对此没有任何问题.我们Cruise Control的自动构建过程似乎对此没有任何问题.但是当我从命令行构建时,使用运行javac的ant,我收到此错误:

[javac] C:\path\project\src\com\us\MyClass.java:70: method does not override a method from its superclass
[javac]     @Override
[javac]      ^
[javac] 1 error
Run Code Online (Sandbox Code Playgroud)

Eclipse在Java 1.6下运行.Cruise Control正在运行Java 1.5.无论我使用哪个版本的Java,我的ant构建都会失败.

java annotations

53
推荐指数
2
解决办法
4万
查看次数

Android Studio中@override的含义

我是Android Studio的新手,我想知道@OverrideAndroid Studio中语句的用途.

java android overriding annotations

47
推荐指数
3
解决办法
5万
查看次数

方法重载和覆盖有什么区别?

重载方法和覆盖方法有什么区别?任何人都可以用一个例子解释它吗?

java overriding overloading

44
推荐指数
2
解决办法
22万
查看次数

代码Java时我们真的需要@Override等吗?

可能重复:
您何时使用Java的@Override注释?为什么?

我想知道在@Override我们要覆盖的代码前添加的功能是什么.我已经完成了没有它,似乎一切都进展顺利(至少,对我而言).

java overriding

37
推荐指数
4
解决办法
2万
查看次数