----------------------android培训、java培训、java学习型技术博客、期待与您交流!----------------------
昨天一小学同学突然联系,就出去聚了一下,聊着聊着就聊了一天,虽然说好几年没联系了,不过感觉很亲切,毕竟小时候经常在一起玩,感觉人出去工作了就是不一样,变得很会说了,而且各方面都显得很老成,以后得多向他学习学习,由于回来的很晚,没来的及写学习日志,视频就看了2集,关于注解的,注解的作用我的理解就是可以加快开发效率,可以使代码变得更加简洁,下面就黏上关于学习注解的代码
/**
* 这是一个注解类
*/
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Retention(RetentionPolicy.RUNTIME) //注解的运行周期
@Target({ElementType.METHOD, ElementType.TYPE}) //注解可以再什么内容上使用,这里是方法和类上
public @interface ItcastAnnotation {
// String color();
String color() default "red";
//属性名字是value时在设置属性时可以不用写value名称
String value();
//数组类型的属性
int[] arrayAttr() default {3, 4, 5};
//枚举类型的属性
Colors.myColors colors() default Colors.myColors.RED;
//注解类型
MetaAnnotation annotationAttr() default @MetaAnnotation("默认值");
//Class类型
Class clazz() default String.class;
}
使用注解
@ItcastAnnotation(color = "red", value = "value", arrayAttr = { 1, 2 }, annotationAttr = @MetaAnnotation("新设的值"), clazz = Integer.class, colors = Colors.myColors.BLUE)
public class AnnotationTest {
public static void main(String[] args) {
if (AnnotationTest.class.isAnnotationPresent(ItcastAnnotation.class)) {
ItcastAnnotation itcastAnnotation = AnnotationTest.class
.getAnnotation(ItcastAnnotation.class);
System.out.println(itcastAnnotation.color());
System.out.println(itcastAnnotation.value());
System.out.println(itcastAnnotation.arrayAttr().length);
System.out.println(itcastAnnotation.annotationAttr().value());
System.out.println(itcastAnnotation.clazz().getName());
System.out.println(itcastAnnotation.colors());
}
}
}
----------------------android培训、java培训、java学习型技术博客、期待与您交流!----------------------
详情请查看:http://edu.csdn.net/heima
分享到:
相关推荐
黑马程序员 - Java基础教学 - 04 - 数组、进制转换、二维数组
黑马程序员-java32期培训视频(基础+就业)黑马程序员-java32期培训视频(基础+就业)
day04_Map,斗地主案例 day05_异常,线程 day06_线程、同步 day07_等待与唤醒案例、线程池、Lambda表达式 day08_File类、递归 day09_字节流、字符流 day10_缓冲流、转换流、序列化流、Files day11_网络编程 day12_...
黑马程序员 - Java基础教学 - 05 - 面向对象(1).doc
黑马程序员 - Java基础教学 - 03 - 变量的作用域、for循环、break、continue、内存结构
黑马程序员 - Java基础教学 - 08 - 面向对象(4)-多态.doc
黑马程序员 - 毕向东 - Java基础教学 - 第02天 个人观看视频总结文档
黑马程序员 - 毕向东 - Java基础教学 - 第01天 个人观看视频总结文档
黑马程序员 - Java基础教学 - 06 - 面向对象(2) - 关于静态static的那些事.doc
黑马程序员-SpringCloud-学习笔记-03-Eureka注册中心
NULL 博文链接:https://huangminwen.iteye.com/blog/1157983
黑马程序员-SpringCloud-学习笔记01-认识微服务
黑马QT讲义,适合QT入门,使用,教程很比较基础,新手可以看看,另外视频链接在哔哩哔哩中。
黑马程序员-SpringCloud-学习笔记-02-微服务拆分及远程调用
黑马程序员--毕向东全套Java视屏,讲解的相当全面,各位如果需要,尽快下载哦! 另外如果视频链接存在打不开的问题,请留言,必定及时更新链接。
月薪过万的入门必知知识,黑马程序员入学Java精华总结
黑马程序员-梅兰商城项目实战,包含图片素材和编写源码。
C++黑马程序员-演讲比赛流程管理系统记录
Java 黑马程序员入学Java知识(精华总结)
NULL 博文链接:https://840198532-qq-com.iteye.com/blog/1490901