磨砺营马剑威java16注解

磨砺营马剑威java16注解

ID:32362920

大小:1.28 MB

页数:15页

时间:2019-02-03

磨砺营马剑威java16注解_第1页
磨砺营马剑威java16注解_第2页
磨砺营马剑威java16注解_第3页
磨砺营马剑威java16注解_第4页
磨砺营马剑威java16注解_第5页
资源描述:

《磨砺营马剑威java16注解》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、课程大纲1、认识Annotation2、系统定义的三个Annotation3、自定义Annotation4、Retention和RetentionPolicy5、反射与Annotation6、@Documented注解7、@Target注解8、@Inherited注解 1、认识AnnotationJDK1.5开始,Java增加了对元数据(即类的组成单元数据)的支持,也就是(Annotation)注解,他是代码里做的特殊标记,这些标记可以在编译,类加载,运行时在不改变原有逻辑的情况下,被读取,并执行相应的处理,通过使用An

2、notation,程序员可以在源文件中嵌入一些补充的信息。代码分析工具,开发工具和部署工具可以通过这些补充信息进行验证或者进行部署。Annotation类似于修饰符一样被使用,可以用于包,类,构造方法,方法,成员变量,参数,局部变量的声明。注意:Annotation是一个接口java.lang.Annotation接口. 2、系统定义的三个Annotation在JDK1.5之后,在系统中提供了三个Annotation,分别是:@Override、@Deprecated、@SuppressWarnings。@Overrid

3、e表示当前的方法定义将覆盖超类中的方法。如果你不小心拼写错误,或者方法签名对不上被覆盖的方法,编译器就会发出错误提示。@Deprecated表示的是一个类或方法已经不再建议继续使用了,标记为已过时。@SuppressWarnings表示关闭不当的编译器警告信息。 3、自定义Annotation注解应用需要三个步骤:(1)编写注解(2)在类上应用注解(3)对应用了注解的类进行反射操作的类自定义Annotation的语法如下:访问控制权限@interfaceAnnotation名称{}例如:public@interfaceM

4、yAnnotation{} 3、自定义Annotation在Annotation中定义变量public@interfaceMyAnnotation{publicStringname();publicStringinfo();}定义变量后,在调用此Annotation时必须设置变量值。@MyAnnotation(name=“bobo",info=“moliying")publicclassDemo{}通过default指定变量默认值,有了默认值在使用时可以不设值public@interfaceMyAnnotation{pu

5、blicStringname()default“bobo";publicStringinfo()default“moliying";} 3、自定义Annotation定义一个变量的数组,接收一组参数public@interfaceMyAnnotation{publicString[]name();}使用时指定数组值@MyAnnotation(name={“bobo",“vince"})publicclassDemo{}使用枚举限制变量取值范围publicenumColor{RED,GREEN,BLUE}public@in

6、terfaceMyAnnotation{publicColorcolor();} 4、Retention和RetentionPolicyAnnotation要想决定其作用的范围,通过@Retention指定,而Retention指定的范围由ReteiontPolicy决定,RetentionPolicy指定了三种范围:范围描述publicstaticfinalRetentionPolicySOURCEpublicstaticfinalRetentionPolicyCLASSpublicstaticfinalRetenti

7、onPolicyRUNTIME在java源程序中存在在java生成的class中存在在java运行的时候存在示列:@Retention(value=RetentionPolicy.RUNTIME)public@interfaceMyAnnotation{publicStringname();} 5、反射与Annotation一个Annotation真正起作用,必须结合反射机制,在反射中提供了以下的操作方法:java.lang.reflect.AccessibleObject方法名称publicbooleanisAnnot

8、ationPresent(ClassannotationClass)描述判断是否是指定的Annotation得到全部的AnnotationpublicAnnotation[]getAnnotations() 5、反射与Annotation示例:Classcls=Class

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。