前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >大数据必学Java基础(八十五):自定义注解

大数据必学Java基础(八十五):自定义注解

原创
作者头像
Lansonli
发布2022-11-12 10:12:04
2270
发布2022-11-12 10:12:04
举报
文章被收录于专栏:Lansonli技术博客

​自定义注解

自定义注解使用很少,一般情况下都是用现成的注解。

一、如何自定义注解

发现定义的注解的声明使用的关键字:@interface,跟接口没有一点关系。

二、注解的内部

以@SuppressWarnings为例,发现内部:

这value是属性还是方法?

答案:看上去是无参数方法,实际上理解为一个成员变量,一个属性

无参数方法名字--》成员变量的名字

无参数方法的返回值--》成员变量的类型

这个参数叫 配置参数

无参数方法的类型:基本数据类型(八种),String,枚举,注解类型,还可以是以上类型对应的数组。

注意:如果只有一个成员变量的话,名字尽量叫value。

三、使用注解

1、使用注解的话,如果你定义了配置参数,就必须给配置参数进行赋值操作:

代码语言:javascript
复制
@MyAnnotation(value={"abc","def","hij"})
public class Person {
}

2、如果只有一个参数,并且这个参数的名字为value的话,那么value=可以省略不写。

代码语言:javascript
复制
@MyAnnotation({"abc","def","hij"})
public class Person {
}

3、如果你给配置参数设置默认的值了,那么使用的时候可以无需传值:

代码语言:javascript
复制
public @interface MyAnnotation2 {
    String value() default "abc";
}

使用:

代码语言:javascript
复制
@MyAnnotation2
@MyAnnotation({"abc","def","hij"})
public class Person {
}

4、一个注解的内部是可以不定义配置参数的:

代码语言:javascript
复制
public @interface MyAnnotation3 {
}

内部没有定义配置参数的注解 --》 可以叫做标记

内部定义配置参数的注解 --》 元数据

5、注解的使用

现在只学习注解的大致技能点,具体怎么应用 后面慢慢学习。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ​自定义注解
    • 一、如何自定义注解
      • 二、注解的内部
        • 三、使用注解
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档