黑马入学_学习blog_第八篇
来源:互联网 发布:360mac版在哪下载 编辑:程序博客网 时间:2024/05/26 05:50
- 注解
像写接口一样写
要对一个类进行检查 反射
元信息<信息的信息> 元注解<注解的注解> 元数据
javac把源文件编译成class 把 源程序中的 一些注解去掉 ,把注解留在 calss文件中,
贴上一段 张老师的 代码 进行分析:
注解中的注解
@ItcastAnnotation(annotationAttr=@MetaAnnotation("flx"),color="red",value="abc",arrayAttr=1)public class AnnotationTest {
/**
* @param args
*/
@SuppressWarnings("deprecation")
@ItcastAnnotation("xyz") //只有value 属性时可以这样简写,但是有其他属性时需要这样写可以定义 其他属性的缺省值已达到效果
public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
System.runFinalizersOnExit(true);
if(AnnotationTest.class.isAnnotationPresent(ItcastAnnotation.class)){
//得到ItcastAnnotation 的实例对象
ItcastAnnotation annotation = (ItcastAnnotation)AnnotationTest.class.getAnnotation(ItcastAnnotation.class);
System.out.println(annotation.color());
System.out.println(annotation.value());
System.out.println(annotation.arrayAttr().length);
//枚举属性
System.out.println(annotation.lamp().nextLamp().name());
//注解属性
System.out.println(annotation.annotationAttr().value());}
Method mainMethod = AnnotationTest.class.getMethod("main", String[].class);ItcastAnnotation annotation2 = (ItcastAnnotation)mainMethod.getAnnotation(ItcastAnnotation.class);
System.out.println(annotation2.value());
}
0 0
- 黑马入学_学习blog_第八篇
- 黑马入学_学习blog_第二篇
- 黑马入学_学习blog_第三篇
- 黑马入学_学习blog_第四篇
- 黑马入学_学习blog_第五篇
- 黑马入学_学习blog_第六篇
- 黑马入学_学习blog_第七篇
- 黑马入学_学习blog_第九篇
- 黑马入学_学习blog_第十篇
- 黑马入学_学习blog_第十二篇
- 黑马入学_学习blog_第一篇
- 黑马入学_学习blog_第十一篇
- 黑马程序员_入学测试题详解
- 入学黑马学习Java学习分享
- 黑马程序员_黑马入学测试复习重点
- 黑马程序员_高新技术学习笔记第八章
- 黑马程序员——第八篇_内部类
- 【黑马程序员】黑马入学准备篇:Java高新技术之 反射
- 用eclipse memory analyzer分析heapdump
- java.lang.IllegalArgumentException,parameter must be a descendant of this view
- [老码团队]Swift中的协议 - 用协议来实现委托模式
- 基于Node.js平台mongoDB开发——mongoskin(by vczero)
- JNDI是什么
- 黑马入学_学习blog_第八篇
- php $_file中error错误解释
- 是什么引起执行计划变得极其糟糕? 应该使用更新统计信息来解决它吗?
- 【HDU】3016 Man Down 线段树DP
- 我所理解的谷歌云计算
- 要想提高工作效率,请拒绝做这7种事
- 十道海量数据处理面试题与十个方法大总结
- 基于ExtJS的左右框架和消息传递处理
- 解释术语:虚拟内存、缺页中断、抖动