⚡️1 注解的理解
①注解(Annotation)也被称为元数据(Metadata),用于修饰解释 包、类、方法、属性、构造器、局部变量等数据信息。
②和注释一样,注解不影响程序逻辑,但注解可以被编译或运行,相当于嵌入在代码中的补充信息。
③在 JavaSE 中,注解的使用目的比较简单,例如标记过时的功能,忽略警告等。在 JavaEE 中注解占据了更重要的角色,例如用来配置应用程序的任何切面,代替 java EE 旧版中所遗留的繁冗代码和 XML 配置等。
⚡️2 基本的 Annotation 介绍
使用 Annotation 时要在其前面增加 @ 符号, 并把该 Annotation 当成一个修饰符使用。用于修饰它支持的程序元素
🧐三个基本的 Annotation
- @Override: 限定某个方法,是重写父类方法, 该注解只能用于方法
- @Deprecated: 用于表示某个程序元素(类, 方法等)已过时
- @SuppressWarnings: 抑制编译器警告
⚡️3 @Override 注解的案例
override:限定某个方法,是重写父类方法,该注解只能用于方法
//override:限定某个方法,是重写父类方法,该注解只能用于方法
class Father {
public void fly() {
System.out.println("Father fly.….");
}
}
class Son extends Father {
@Override //说明
public void fly() {
System.out.println("Son fly..");
}
}
🧐解读:
@Override注解放在fly 方法上,表示子类的fly 方法时重写了父类的fly- 这里如果没有写
@Override还是重写了父类fly- 如果你写了
@Override注解,编译器就会去检查该方法是否真的重写了父类的方法,如果的确重写了,则编译通过,如果没有构成重写,则编译错误.- 看看
@Override的定义(源码)
解读: 如果发现@interface表示一个 注解类
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
public @interface Override {
}
😲补充说明:@interface的说明
@interface不是interface,是注解类是jdk5.0之后加入的
🐱🏍Override使用说明
- @Override表示指定重写父类的方法((从编译层面验证),如果父类没有fly方法,则会报错
- 如果不写@Override注解,而父类仍有public void fly(){},仍然构成重写
- @Override只能修饰方法,不能修饰其它类,包,属性等等
- 查看@Override注解源码为@Target(ElementType.METHOD),说明只能修饰方法
- @Target是修饰注解
本文详细介绍了Java中的注解,包括注解的理解、基本的注解如@Override、@Deprecated和@SuppressWarnings的用法。进一步探讨了JDK的元注解,如@Retention、@Target、@Documented和@Inherited,讲解了它们的作用、用例及源码分析,帮助开发者更深入地理解注解的使用和设计原理。
最低0.47元/天 解锁文章
213

被折叠的 条评论
为什么被折叠?



