大数据必学Java基础(八十五):自定义注解
【摘要】 自定义注解自定义注解使用很少,一般情况下都是用现成的注解。一、如何自定义注解;;发现定义的注解的声明使用的关键字:@interface,跟接口没有一点关系。二、注解的内部以@SuppressWarnings为例,发现内部:;这value是属性还是方法?答案:看上去是无参数方法,实际上理解为一个成员变量,一个属性无参数方法名字--》成员变量的名字无参数方法的返回值--》成员变量的类型这个参数...
自定义注解
自定义注解使用很少,一般情况下都是用现成的注解。
一、如何自定义注解


发现定义的注解的声明使用的关键字:@interface,跟接口没有一点关系。
二、注解的内部
以@SuppressWarnings为例,发现内部:

这value是属性还是方法?
答案:看上去是无参数方法,实际上理解为一个成员变量,一个属性
无参数方法名字--》成员变量的名字
无参数方法的返回值--》成员变量的类型
这个参数叫 配置参数
无参数方法的类型:基本数据类型(八种),String,枚举,注解类型,还可以是以上类型对应的数组。
注意:如果只有一个成员变量的话,名字尽量叫value。
三、使用注解
1、使用注解的话,如果你定义了配置参数,就必须给配置参数进行赋值操作:
@MyAnnotation(value={"abc","def","hij"})
public class Person {
}
2、如果只有一个参数,并且这个参数的名字为value的话,那么value=可以省略不写。
@MyAnnotation({"abc","def","hij"})
public class Person {
}
3、如果你给配置参数设置默认的值了,那么使用的时候可以无需传值:
public @interface MyAnnotation2 {
String value() default "abc";
}
使用:
@MyAnnotation2
@MyAnnotation({"abc","def","hij"})
public class Person {
}
4、一个注解的内部是可以不定义配置参数的:
public @interface MyAnnotation3 {
}
内部没有定义配置参数的注解 --》 可以叫做标记

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

5、注解的使用
现在只学习注解的大致技能点,具体怎么应用 后面慢慢学习。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)