为了账号安全,请及时绑定邮箱和手机立即绑定

【备战春招】第6天 全面解析JAVA注解

标签:
Java

课程名称:

课程章节:第2章 JAVA中的常见注解

课程讲师: 刘果国

课程内容:

 

一、JAVA中的常见注解

1、JDK自带的注解

  • @Override,覆盖父类的方法

  • @Deprecated,过时的方法

  • @SuppressWarnings("deprecation"),忽略警告

2、常见第三方注解

  • Spring

@Autowired

@Service

@Repository

  • Mybatis

@InsertProvider

@UpdateProvider

@Options

https://img1.sycdn.imooc.com//63e9060b00013d0f14500816.jpg

https://img1.sycdn.imooc.com//63e906110001e67614500814.jpg

3、JAVA注解的分类

  • 按照运行机制分

源码注解:注解只在源码中存在,编译成.class文件就不存在了

编译时注解:注解在源码和.class文件中都存在,如上述JDK自带的三个注解

运行时注解:在运行阶段还起作用,甚至会影响运行逻辑的注解,如@Autowired

  • 按照来源分

有来自JDK的注解、来自第三方的注解、我们自己定义的注解

  • 元注解,注解的注解

二、自定义注解

1、自定义注解的语法要求

@Target({ElementType.METHOD,ElementType.TYPE})

@Retention(RetentionPolicy.RUNTIME)

@Inhertied

@Documented

public @Interface Description {

String desc();

String author();

int age() default 18;

}

https://img1.sycdn.imooc.com//63e9062d00015e4a14500814.jpg

成员类型是受限的,合法的类型包括原始类型及String,Class,Annotation,Enumeration

如果注解只有一个成员,则成员名必须取名为value(),在使用时可以忽略成员名和赋值号(=)

注解类可以没有成员,没有成员的注解称为标识注解

2、注解的注解(元注解)

@Target({ElementType.METHOD,ElementType.TYPE})

https://img1.sycdn.imooc.com//63e9063b0001e60914500816.jpg

@Retention(RetentionPolicy.RUNTIME),生命周期

@Inhertied,允许子类继承

@Documented,生成JavaDoc时包含注解的信息

3、使用自定义注解

@<注解名>(<成员名1>=<成员值1>,<成员名2>=<成员值2>,……)

@Description(desc="I am eyeColor",author="Mooc boy",age=18)

public String eyeColor(){

return "red";

}

课程收获:

对基本的注解有了初步了解,知道了注解的作用域、生命周期、注解的分类,期待后续更多注解的学习。


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消