@Override:用于重写方法的前面,例如只能写在fly的上面,不能写在class Son的上面,即使删掉了override,重写了还是重写了,不会受影响。
总结:
1、@Override 表示指定重写父类的方法(从编译层面验证),如果父类没有fly方法,则会报错
2、如果不写@Override 注解,而父类仍有 public void fly(){},仍然构成重写
3、@Override 只能修饰方法,不能修饰其它类,包,属性等等
4、查看@Override注解源码为 @Target(ElementType.METHOD),说明只能修饰方法
5、@Target 是修饰注解的注解, 称为元注解,记住这个概念
@Deprecated的说明
1.用于表示某个程序元素(类,方法等)已过时,但是还可以用
2.可以修饰方法,类,字段,包,参数 等等
3.@Target(value={CONSTRUCTOR, FIELD, LOCAL VARIABLE, METHOD3.PACKAGE,PARAMETER, TYPE})
4.@Deprecated 的作用可以做到新旧版本的兼容和过渡
@SuppressWarnings:抑制警告