Annotation之补充
Annotation之补充
@Inherited
表示一个Annotation能否被使用其类的子类继续继承下去,如果没有写上此注释,则此Annotation根本就是无法继承的。
官方解释:指示注释类型被自动继承。如果在注释类型声明中存在 Inherited 元注释,并且用户在某一类声明中查询该注释类型,同时该类声明中没有此类型的注释,则将在该类的超类中自动查询该注释类型。此过程会重复进行,直到找到此类型的注释或到达了该类层次结构的顶层 (Object) 为止。如果没有超类具有该类型的注释,则查询将指示当前类没有这样的注释。
具体实例
MyAnnotation
- import java.lang.annotation.Documented;
- import java.lang.annotation.ElementType;
- import java.lang.annotation.Inherited;
- import java.lang.annotation.Retention;
- import java.lang.annotation.RetentionPolicy;
- import java.lang.annotation.Target;
- @Inherited //添加此句
- @Target(ElementType.METHOD)
- @Retention(RetentionPolicy.RUNTIME)
- @Documented
- public @interface MyAnnotation {
- public String name() default "singsong";
- }
在Person类中使用Annotation
- public class Person {
- @MyAnnotation(name = "The person's name is singsong")
- public void getName() {
- }
- }
Students类继承Person类
- public class Students extends Person {
- }
使用反射机制来实现Students类继承的注释
- import java.lang.reflect.Method;
- public class TestMyAnnotation {
- public static void main(String[] args) throws Exception {
- Class<?> c=Students.class;
- Method method=c.getMethod("getName");
- MyAnnotation myAnnotation = method.getAnnotation(MyAnnotation.class);
- System.out.println(myAnnotation.name());
- }
- }
运行结果:
The person's name is singsong
转载于:https://blog.51cto.com/singsong/1161736
Annotation之补充相关推荐
- [转载] Java中的元数据
参考链接: Java中的数据类型 元数据 也可能刚听到元数据你会有点陌生,其实任何一个使用过struts,ejb或者hibernate的开发人员都在不知不觉中使用元数据.所谓的元数据是指用来描述数据的 ...
- SpringBoot+Dubbo整合
说明: 由于此文章是博主2017年学习时写的文章,项目dubbo版本过低,新项目不应该继续采用此版本.阿里巴巴已经将dubbo重新维护并捐给Apache开源组织,新起了比较新版本的项目整合.学习整合的 ...
- hibernate中的Annotation补充
下面使用Annotation来定义一个实体类: @Entity @Table(name="person_table") ...
- 注释(Annotation)
J2SE 5.0提供了很多新的特征.其中一个很重要的特征就是对元数据(Metadata)的支持.在J2SE 5.0中,这种元数据称为注释(Annotation).通过使用注释,程序开发人员可以在不改变 ...
- Annotation注解(有源代码)
注解(annotation)概述: ·从JDK5.0 开始,java增加了对元数据(MetaData)的支持,也就是Annotation(注解) ·Annotation其实就是代码里的特殊标记,这些标 ...
- 1.1 Java注解(Annotation)简介
从 Java 5 版本之后可以在源代码中嵌入一些补充信息,这种补充信息称为注解(Annotation),是 Java 平台中非常重要的一部分.注解都是 @ 符号开头的,例如我们在学习方法重写时使用过的 ...
- Java Annotation
为什么80%的码农都做不了架构师?>>> 第1部分 Annotation架构 先看看Annotation的架构图: 从中,我们可以看出: (01) 1个Annotation 和 ...
- java的annotation_Java Annotation认知(包括框架图、详细介绍、示例说明)
摘要 Java Annotation是JDK5.0引入的一种注释机制. 网上很多关于Java Annotation的文章,看得人眼花缭乱.Java Annotation本来很简单的,结果说的人没说清楚 ...
- Spring的Autowired自动装配(XML版本+Annotation版本+源码+解析)
http://moshowgame.iteye.com/blog/1607718 @Autowired自动装配 上面的例子我们用的都是手动装配的,如果DAO-Service一多那就很麻烦了,那么我们需 ...
最新文章
- JBOSS+EJB3之Entity 开发实例
- Strongswan — IPSec 的 Linux 软件实现
- google手势检测
- VS2008 fatal error LNK1000: Internal error during IncrBuildImage 解决方案
- Tomcat一步步实现反向代理、负载均衡、内存复制
- c语言随机数循环延迟,C语言生成随机数的函数、延时函数
- linux设置板卡时间,嵌入式VS-RK3288板卡 Linux 修改BOOTDELAY介绍
- 我们做了一款无网远程运维的智能硬件,坐等运维工程师“翻牌”
- python飞机大战加背景音乐_Python飞机大战实例有感——pygame如何实现“切歌”以及多曲重奏?...
- JavaScript中的动画效果
- 将分类图像转换为ERDAS可识别的专题图像(Continuous to Thematic)
- Proteus中继电器详解
- 手把手教会你如何玩转SpringMVC
- 中英文说明书丨ProSci LAG-3 重组蛋白
- Android发展趋势分析
- Apple 公司开发者账号添加团队成员
- Nhibernate心得
- 鲁迅的《白光》表达了什么
- 黑白色老照片一键上色在线工具,让老照片漂亮起来
- 高德坐标转GPS坐标 CV版