1.JDK中的注解:
@Override:一般是子类用来覆盖父类中同名方法的
例如:
@Deprecated:表示这个方法已经过时了
例如:
@Suppvisewarnings:用于忽略警告
例如:
2.Java第三方注解:
例如Spring:@Autowired、@Service、@Repository
Mybatis:@InsertProvider、@UpdateProvider、@Options
比如Spring的@Autowired:
使用之前:
使用之后:
3.Java注解的分类:
3.1按照运行机制分类:
源码注解:注解只在源码中存在,编译成.class文件就不存在了
编译时注解:注解在源码和.class文件中都存在(JDK自带的一些注解都是该类型)
运行时注解:在运行阶段还起作用,甚至会影响运行逻辑的注解(例如Spring的@Autowired)
3.2按照来源分类:
来自JDK的注解、来自第三方的注解、我们自己定义的注解