`
blueram
  • 浏览: 763749 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

一个错误 must override a superclass method

阅读更多

After back from New Zealand, this the first time i officially used Java 5 and above to do coding, it is bit hard for me to code in Java 5, because i am not familiar with the Java 5 new features such as annotation, generics , boxing unboxing those stuffs.

 

And this @Override annotation had made me struggle for few hours. According to Javadoc,

Indicates that a method declaration is intended to override a method declaration in a superclass. If a method is annotated with this annotation type but does not override a superclass method, compilers are required to generate an error message.

So i assume this code will work fine:

interface K {
  void method1();
}

class A implements K {
  @Override
  public void method1() {
  }
}

But the compiler complains about it and giving the error: “The method method1() of type A must override a superclass method”.

I don’t know what is strong with the code, i thought maybe i used it in the wrong way at the beginning, i tested up with different case, end up i found out @Override annotation seems only applied to methods overridden from a superclass and not from Interfaces, i guess this is because implements interface but not override ! This had wasted my few hours !

However, this case not applied to Java 6, i switch compiler version to Java 6 and everything work fine. Weird !

分享到:
评论

相关推荐

    The method of type must override a superclass method解决方式, myeclipse, java, web

    在Java编程语言中,"The method of type must override a superclass method" 是一个常见的错误提示,它通常出现在子类试图重写父类方法时,但没有按照正确的格式进行。这个错误通常与多态性和继承概念有关,是理解...

    android @override 报错解决方案

    现象: … java: 1801: method does not override a method from its superclass @Override… 原因: Eclipse is defaulting to Java 1.5 and you have classes implementing interface methods (which in Java 1.6 ...

    Override错误已解决

    > The method oncreate(Bundle) of type HelloWorld must override or implement a supertype method 这表示 `oncreate()` 方法未正确覆盖父类中的 `onCreate()` 方法。正确的做法是: ```java public class Hello...

    method-override:覆盖HTTP动词

    方法重写 ... 创建一个新的中间件函数,以新值覆盖req.method属性。 该值将从提供的getter提取。 getter用于查找请求的重写请求方法的getter。 (默认值: X-HTTP-Method-Override ) options.methods

    nginx对http method的控制修改方法

    例如,当客户端发送一个POST请求时,如果Nginx配置中没有明确允许该方法,则可能会返回405 Method Not Allowed的状态码。 #### 三、源码级修改步骤 ##### 1. 进入Nginx源码目录 首先,需要获取Nginx的源码包,并...

    methodoverride:HTTP方法覆盖Koa中间件

    注意: koa-methodoverride@2.x表示koa@2.x ,将koa-methodoverride@1.x和koa@1.x koa-methodoverride@1.x使用。 用法,更多 var app = require ( 'koa' ) ( ) ; var methodOverride = require ( 'koa-method...

    method-override:method-override源码翻译

    创建一个新的中间件函数和设置新的属性值,使用重载请求改写的方法。这个新值来自于提供的getter。 getter -getter用于为请求查询请求重载的方法(默认:X-HTTP-Method-Override) options.methods-查看没有方法...

    图解C# new和override的区别.doc

    这是因为虽然`B`类中有一个新的`Method`方法,但当我们从`A`类型的引用调用它时,实际调用的是基类`A`的`Method`,因为`B`类的`Method`仅对`B`及其派生类可见。 接下来,我们讨论`override`关键字。`override`用于...

    koa_method_override:koa的方法覆盖中间件

    受快速方法覆盖的启发 ... var method_override = require("koa_method_override") app.use(method_override()); 这将创建 this.request.original_method // hold the original method this.method // new method

    Test_invoke_super_range.rar_Superclass

    "Test_invoke_super_range.rar_Superclass"的标题暗示了我们讨论的是一个关于调用超类方法的主题,特别是与范围(range)有关的。这可能指的是在继承链中的不同层次上调用超类的方法。描述中提到的“invoke method ...

    分享一下@Override标签背后的小秘密

    @Override标签是一个非常重要的标签,但是一般情况下,我们只是知道它的基本用途,即用于标记方法的重写。但是,这个小小的标签蕴藏着很多有趣的秘密。今天,我们就来深入探讨一下这个标签的秘密。 首先,让我们来...

    java异常解决方案.docx

    * java.lang.Error: Unresolved compilation problem: The method contextInitialized(ServletContextEvent) of type CreateDataSourceTableListener must override a superclass method + 解决方案:检查 Servlet ...

    Override-Overload

    在这个例子中,`Example`类包含了两个名为`A`的方法,它们分别接受一个整数参数和两个整数参数。当我们调用这两个方法时,Java编译器会根据传入参数的数量和类型自动选择合适的方法。 **应用场景:** - **提供灵活...

    override-decorator:ES7 的简单覆盖装饰器

    覆盖装饰器 ES7 的简单@Override装饰器。 用法 启用阶段0或es7.decorators在巴别,然后标记该意图覆盖超类与性质性质@Override 。 class A { ...// Error: b does not override a member of its superclass

    override abstract virtual interface比较

    在 C# 编程语言中,override、abstract、virtual、interface 是四个关键字,它们之间存在着紧密的联系,我们经常会遇到 override、abstract、virtual 这三个关键字的使用,而 interface 则是一种特殊的抽象类。...

    Delphi面向对象:overload与override[文].pdf

    在基类中,我们定义了一个虚拟方法DoSomething,而在派生类中,我们使用override关键字来重写这个方法。 override的好处是允许开发者在派生类中添加新的功能,而不影响父类的原有功能。同时,override也可以帮助...

    new,override,virtual 示例

    当你在派生类中定义一个与基类中相同名称和签名的方法时,如果不加`new`或`override`,编译器会默认使用`new`来处理。这表示你在派生类中创建了一个新的方法,它覆盖了基类中的同名方法,但这种覆盖是"静态"的,也...

    Lua 类的继承与函数override

    在 Lua 中,类可以被看作是一个包含数据和方法的表,而对象则是类的一个实例。接下来,我们将深入探讨 Lua 中的类、继承以及函数重写(override)。 首先,让我们理解 Lua 中的“类”。在 Lua 中,你可以创建一个表...

    c# override new base 关系

    当你在派生类中使用 `override` 关键字修饰一个方法时,这个方法将覆盖基类中相同签名的虚方法。这样做使得派生类可以提供与基类不同的实现,从而根据实例化类型来执行不同的行为。例如: ```csharp public class ...

    Factory Method 工厂方法模式(创建型模式)

    Factory Method 使得一个类的实例化延迟到子类。 #### 结构(Structure) Factory Method 模式包含以下几个主要组成部分: 1. **Creator(抽象创建者)**:声明了工厂方法,该方法返回一个产品对象。在某些情况下...

Global site tag (gtag.js) - Google Analytics