版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第18章给编译器看的注释Annotation,Annotation 系统内建的Annotation 自定义Annotation Rentention和RententionPolicy 反射与Annotation 深入Annotation,18.1 Annotation,Annotation实际上表示的是一种注释的语法,在Java中最早的程序是提倡程序与配置代码相分离,而最新的理论是将所有的配置直接写入到程序之中,那么如果要想完成这样的功能,则就要使用Annotation,18.2 系统内建的Annotation,18.2.1 Override 18.2.2 Deprecated 18.2.3
2、SuppressWarnings,18.2.1 Override 在覆写的时候可以明确的使用Override表示方法是属于覆写的操作 package org.lxh.demo01; public class Studnt extends Person Override public String say() return 学生在说话。 ; ,18.2.2 Deprecated Deprecated注释表示是不建议使用的操作 package org.lxh.demo02; public class Info Deprecated public String getInfo() return he
3、llo ; ,18.2.3 SuppressWarnings SuppressWarings表示的是压制警告,如果有一些警告信息,则可以压制掉,不出现警告的提示 package org.lxh.demo02; public class TestInfo SuppressWarnings(deprecation) public static void main(String args) new Info().getInfo() ; ,18.3 自定义Annotation,定义Annotation的语法 public interface Annotation的名称 定义一个简单的Annotatio
4、n package org.lxh.demo04; public interface MyAnnotation ,18.4 Rentention和RententionPolicy,RetentionPolicy中规定了以下的三个范围 只在源代码中起作用:public static final RetentionPolicy SOURCE 只在编译之后的class中起作用:public static final RetentionPolicy CLASS 在运行的时候起作用:public static final RetentionPolicy RUNTIME,18.5 反射与Annotatio
5、n,18.5.1 取得全部的Annotation 18.5.2 加入自定义的Annotation,18.5.1 取得全部的Annotation 在一个方法上使用三个内建的Annotation声明 package org.lxh.demo09; public class Info Override Deprecated SuppressWarnings(value=) public String toString() return hello ; ,18.5.2 加入自定义的Annotation 自定义的Annotation编写的时候如果要想让其有意义,则必须使用RUNTIME声明范围 pack
6、age org.lxh.demo09; import java.lang.annotation.*; Retention(value=RetentionPolicy.RUNTIME) public interface MyAnnotation public String key() default LXH; public String value(); ,18.6 深入Annotation,18.6.1 Target 18.6.2 Documented注释 18.6.3 Inherited,18.6.1 Target 一个自定义的Annotation可以在任意的位置上使用 package or
7、g.lxh.demo11; MyAnnotation public class Info MyAnnotation private String name ; MyAnnotation public String toString() return hello ; ,18.6.2 Documented注释 此种表示的是文档的注释格式 package org.lxh.demo12; import java.lang.annotation.*; Documented Target(value = ElementType.METHOD, ElementType.TYPE ) Retention(va
8、lue = RetentionPolicy.RUNTIME) public interface MyAnnotation public String key() default LXH; public String value() default LXH; ,18.6.3 Inherited 表示一个Annotation能否被使用其类的子类继续继承下去,如果没有写上此注释,则此Annotation根本就是无法继承的 package org.lxh.demo13; import java.lang.annotation.*; Inherited Documented Target(value = ElementType.METHOD, ElementType.TYPE ) Retention(val
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年燃气经营企业从业人员专业考试历年参考题库含答案详解
- 2026年实验室生物安全培训考试试题及答案
- 冬季装饰装修施工保障方案
- 春季英文课件
- 保育员考试专业知识中级试题(附答案)
- 2026年陕西省政府采购评审专家考试真题含答案
- 2026年注册安全工程师隐患排查试卷(含答案)
- 山体滑坡危险性评价报告
- 智慧物流仓储项目工程勘察方案
- 智慧高速公路建设工程专项施工方案
- 学校控辍保学劝返工作记录表 17篇
- 2026年市场监管所综合执法人员考核题库附答案
- 2026年安全员《B证》题库及参考答案详解(完整版)
- 广东五校2026-2027学年高三上学期第二次月考英语
- 临床护理PBL教学课件
- 2025年经济师考试保险(初级)专业知识和实务试卷与参考答案
- 满堂脚手架搭设拆除施工方案
- 中职高教版(2023)语文职业模块-第五单元:走近大国工匠(一)展示国家工程-了解工匠贡献【课件】
- 西南交通大学《344风景园林基础》考研真题详解
- ov7670中文数据手册高级
- 08SS523建筑小区塑料排水检查井
评论
0/150
提交评论