注解-自定义注解的格式和本质
自定义注解的格式和本质
先进入注解看一下注解是如何定义的
上面这两个注解先不管他 先看一下是如何写这种注解的
格式很简单:
public @interface 注解名{}
public @interface MyAnno { }
这样就是一个注解 这种注解我们称为源注解
注解本质上就是一个接口 该接口默认继承Annotation接口
属性:接口中可以定义的抽象方法
属性要求:
1.属性的返回值类型有下列要求
- 基本数据类型
- String
- 枚举
- 注解
- 以上类型的数组
2.定义了属性 在使用时需要给属性赋值
比如:
自定义代码:
public @interface MyAnno { int age(); String name(); }
测试类:
@MyAnno(age = 11,name = "张三") public void method(){ }
1.如果定义属性时 使用default关键字属性默认初始化值 则使用注解时 可以不进行属性的赋值
2.如果只有一个属性需要赋值 并且属性的名称时value 则value可以省略 直接定义值即可
比如
注解:
public @interface MyAnno { int value(); //String name(); }
测试类:
@MyAnno(11) public void method(){ }
3.数组赋值时 值使用{}包裹 如果数组只有一个值 则{}可以省略
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本