• 小谈@override


      @override是jdk1.5增加的注解,主要是用来声明子类的某方法覆盖了父类的某方法。非常简单的注解,但是有个小问题:

      项目最开始使用的是jdk1.6,mvc模式:接口 ----> 实现类。后来项目改成了jdk1.5,结果所有实现类上的有@override注解的方法全部报错,把@override注解删掉就好了。当时感觉比较怪,因为@override是jdk1.5的版本出来的,为什么1.5却不支持?

      

      现在jdk1.5环境下,做如下测试:

      1.提供一个接口和抽象类:

    /*接口*/
    interface MyInter{
        
        public void say();
        
    }
    
    /*抽象类*/
    abstract class MyAbstract{
        
        public abstract void read();
        
    }

      2.继承抽象类,实现接口:

      

      问题出来了:覆盖接口的方法,编译不通过;而另外两个却通过了。

      

      3.将环境换成jdk1.6,发现编译全部通过。

      

      查阅了相关资料,发现:jdk1.5中并不支持接口方法的@override的覆盖。可能是觉得实现了接口,必定要实现方法,否则编译器一样会报错,这样的话,@override就显得多余了。但在jdk1.6中,扩展了,在接口的实现方法上加@override是合法的了。

  • 相关阅读:
    驼峰匹配
    常量
    bug生命周期&bug跟踪处理
    jmeter——参数化、关联、断言
    jmeter——http、jdbc、soap请求
    APP测试要点
    Android ADB 命令总结
    理解HTTP三次握手和四次握手的过程
    web、pc客户端、app测试的区别
    在RobotFramework--RIDE中把日期转化为整型进行运算
  • 原文地址:https://www.cnblogs.com/myCodingSky/p/3581896.html
Copyright © 2020-2023  润新知