`

java @override 报错处理

    博客分类:
  • java
 
阅读更多
文章来源:http://www.cnblogs.com/mopig/archive/2012/03/15/2397728.html

一花一世界Override错误
一、java @override 报错处理

有时候在自己电脑上编译通过的java代码,在别人那里却编译不通过,总是@override报错,把@override去掉就好了,但不能从根本上解决问题。

据说这是jdk的问题,@Override是JDK5就已经有了,但有个小小的Bug,就是不支持对接口的实现,认为这不是Override 而JDK6修正了这个Bug,无论是对父类的方法覆盖还是对接口的实现都可以加上@Override。
首先要确保安装了jdk 1.6,


然后,在eclipse中修改配置,在 Windows->Preferences-->java->Compiler-->compiler compliance level 中选择 1.6,刷新工程,重新编译下;
如果还是不行,就在报错的工程上,鼠标右键选择 Properties-->Java Compiler-->compiler compliance level 中选择 1.6,刷新工程,重新编译下。


二、Android之@Override详解
Android的开发者对@Override肯定是非常熟悉,不管是自己的代码中还是书上都会出现,但是他是什么意思呢?如下:
  @Override是伪代码,表示重写(当然不写也可以),不过写上有如下好处:
    1、可以当注释用,方便阅读
    2、编译器可以给你验证@Override下面的方法名是否是你父类中所有的,如果没有则报错比如你如果没写@Override而你下面的方法名又写错了,这时你的编译器是可以通过的(它以为这个方法是你的子类中自己增加的方法)
  example:

  在重写父类的onCreate时,在方法前面加上@Override系统可以帮你检查方法的正确性。例如:

  publicvoidonCreate(BundlesavedInstanceState){…….}
  这种写法是正确的,如果你写成
  publicvoidoncreate(BundlesavedInstanceState){…….}
  这样编译器会报如下错误——
  Themethodoncreate(Bundle)oftypeHelloWorldmustoverrideorimplementasupertypemethod,
  以确保你正确重写onCreate方法。(因为oncreate应该为onCreate)
  而如果你不加@Override,则编译器将不会检测出错误,而是会认为你新定义了一个方法oncreate。
分享到:
评论

相关推荐

    android @override 报错解决方案

    这种问题的根本原因在于Java语言版本的差异以及编译器对`@Override`注解的不同处理方式。 在Java 1.5之前,`@Override`注解主要用于明确指出一个方法是覆盖了父类中的同名方法。而在Java 1.6中,`@Override`的使用...

    详解Java中@Override的作用

    在Java编程语言中,`@Override` 是一个重要的注解,它的主要作用是明确标识一个方法是重写了其父类中的方法。这个注解在代码的可读性和编译时的错误检查方面提供了显著的优势。下面我们将深入探讨`@Override` 的作用...

    个人开发中遇到常见问题及解决办法(吐血总结)

    9 Java @override报错的解决方法 10 js实现 选中子页面的checkbox,点击确认,将选中的数据显示到父页面 11 解析oracle的rownum 12 ava web项目中开放一个webservice接口实例 13 js方式实现 系统时间显示 14 js 按...

    Annotation--学习:JDK内建Annotation

    - `@Override`: 检查方法是否真正重写父类方法,若未重写,则编译器会报错。 - `@Deprecated`: 标记不再推荐使用的代码,编译器会在使用时发出警告。 - `@ SuppressWarnings`: 允许程序员抑制特定的编译器警告。 ...

    AndroidStudio中重载方法@Override的使用详解

    `@Override` 注解是Java语言中用于标记一个方法是重写了父类的特定方法,确保编译器在编译时进行检查,以防止意外地覆盖或丢失方法。本文将深入探讨在Android Studio中如何使用`@Override`进行方法重载以及相关的...

    Cocos2dxDownloader.java文件报错需要引入的第三方包

    在您提供的信息中,`Cocos2dxDownloader.java`文件报错,这通常意味着在编译或运行阶段,项目缺少必要的依赖。 报错的原因是缺少了`android-async-http-1.4.8`这个第三方包。`android-async-http`是一个非常流行的...

    Android 使用OkHttp3报错处理

    在Android开发中,OkHttp3是一个非常流行的网络请求库,它提供了高效的网络访问能力,并且在处理错误方面具有良好的机制。下面将详细讲解如何在Android应用中使用OkHttp3进行网络请求,以及如何处理可能出现的错误。...

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

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

    Java注解Annotaton.doc

    Java注解(Annotation)是Java编程语言中的一个重要特性,它允许程序员在源代码中嵌入元数据,这些元数据可以被编译器、JVM或特定工具读取和处理。注解提供了更加灵活的方式来对代码进行标记,以便在编译、部署或...

    java中元注解及实列

    如果方法签名与父类方法不匹配,编译器会报错,帮助开发者避免意外地创建新方法而非重写旧方法。 ```java public class Parent { public void myMethod() { // ... } } public class Child extends Parent { @...

    495.493.JAVA基础教程_枚举类与注解-每天一考(495).rar

    Java提供了几种内置的注解,如`@Override`、`@Deprecated`和`@ SuppressWarnings`。同时,开发者也可以自定义注解,通过定义注解处理器来实现特定的行为。 `@Override`用于标记一个方法,表示该方法是重写父类中的...

    annotation 详解

    这意味着在一个项目中可以有多个`@Override` 实例,但它们都属于同一个类型 `java.lang.Override`。 #### 三、具体注解类型详解 1. **`@Override`** - **功能** `@Override` 是Java标准库中的一个`Annotation`...

    导出excel此单元格中的数字为文本格式,或者其前面有撇号

    在编程领域,特别是使用Java处理Excel数据时,这种情况可能需要特别处理。EasyExcel是一款由阿里开源的Java库,专门用于处理Excel读写,它简化了Excel操作,但在某些情况下,如遇到数字作为文本处理时,仍需了解其...

    javaAnnotation.pdf

    在Java中,注释不再仅仅是解释性文本,而是可以被编译器或工具读取和处理的结构化信息。 注释的基本知识: 在J2SE 5.0中,注释以`@注释名`的形式存在于代码中。例如,内置的注释`@Override`和`@Deprecated`。某些...

    编程语言Java注解.pdf

    - **@Override**:用于指示方法覆盖或实现超类中的方法,如果方法没有正确覆盖超类的方法,编译器会报错。 - **@Deprecated**:用于标记过时的方法或类,调用这些方法或类时编译器会发出警告,提示开发者该功能已不...

    Java实战篇:设计自己的Annotation

    本文首先介绍了Java 1.5中内置的三种常见Annotation类型:`@Override`、`@Deprecated`和`@SuppressWarnings`,并详细解释了它们的作用。随后,文章深入探讨了如何自定义Annotation,包括使用`@Retention`和`@Target`...

    maven配置工具

    1. **处理@Override报错**:当出现@Override报错时,需要在`pom.xml`中添加Maven编译插件配置,指定JDK版本,例如: ```xml <groupId>org.apache.maven.plugins <artifactId>maven-compiler-plugin <version>...

    Java Annotation详解

    - `@Override`:确保方法确实重写了超类中的方法,如果方法不存在于超类中,编译器会报错。 - `@Deprecated`:标记不再推荐使用的代码,编译器会在使用到这些代码时发出警告。 - `@SuppressWarnings`:抑制特定类型...

Global site tag (gtag.js) - Google Analytics