注解的理解:
1)注解(Annotation)也被称为元数据,用于修饰解释 包、类、方法、属性、构造器、局部变量等数据信息
2)和注释一样,注解不影响程序逻辑,但注解可以被编译或者运行,相当于嵌入在代码中的补充信息。
3) 在JavaSE中,注解的使用的目的比较简单,例如标记过时的功能,忽略警告等。在JavaEE中注解占据了更加重要的角色,例如用来配置应用程序的任何切面,代替java EE旧版中所遗留的繁冗代码和XML配置等等。
基本的Annotation介绍:
使用Annotation 时要在其前面添加 @ 符号,并把该 Annotation 当成一个修饰符来使用。 用于修饰它支持的程序元素。
三个基本的 Annotation:
1) @Override :限定某个方法 , 是重写父类方法,该注解只能用于方法。
class Father{
public void fly(){
System.out.println("Father fly..");
}
}
class Son extends Father{
@Override
// 1、 @Override 注解放在fly方法上,表示子类的fly方法重写了父类的fly
// 2. 如果这个地方没有写 @Override ,还是重写了fly。
// 3、如果你写了@Override注解,编译器就会去检查该方法是否真的重写了父类的
// 方法,如果的确重写了,则编译通过,如果没有重写,则编译错误
public void fly() {
System.out.println("Son fly...");
}
}
补充说明:
@interface 的说明:@interface 不是interface ,是注解类,不是接口。
@override的定义
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
public @interface Override {
}
Override使用说明: Override表示重写父类的方法(从编译层面验证),如果父类没有fly方法,则会报错。如果不写@Override注解,而父类仍有 public void fly(){},仍然构成重写。 @Override只能修饰方法,不能修饰其他类, 包,属性等。
2)@Deprecated : 用于表示某个程序元素(类,方法等)已过时
可以用于修饰方法,类,字段,包,参数等等。@Depreciate可以做版本升级过渡使用。
3) @SuppressWarnings: 抑制编译器的警告。
public class Override_ {
//1 . 当我们不希望看到警告的时候, 可以使用 SuppressWarnings 注解来消除警告信息
//2 . 在{“”}中, 可以写入你希望抑制(不显示)警告信息。
@SuppressWarnings({"all"})
public static void main(String[] args) {
}
}
关于@SuppressWarnings 作用范围是和你放置的位置相关,比如@SuppressWarnings放在main方法中,那么抑制警告的范围就在main方法。通常我们可以放置在方法,类上。



