当前位置: 首页 > news >正文

贵港市网站建设_网站建设公司_Windows Server_seo优化

如何加强省市网站建设,域名注册教程,域名做好了怎么做网站内容,兰州网站建设模板元注解是负责对其它注解进行说明的注解#xff0c;自定义注解时可以使用元注解。Java 5 定义了 4 个注解#xff0c;分别是 Documented、Target、Retention 和 Inherited。Java 8 又增加了 Repeatable 和 Native 两个注解。这些注解都可以在 java.lang.annotation 包中找到。…元注解是负责对其它注解进行说明的注解自定义注解时可以使用元注解。Java 5 定义了 4 个注解分别是 Documented、Target、Retention 和 Inherited。Java 8 又增加了 Repeatable 和 Native 两个注解。这些注解都可以在 java.lang.annotation 包中找到。 Documented Documented 是一个标记注解没有成员变量。用 Documented 注解修饰的注解类会被 JavaDoc 工具提取成文档。默认情况下JavaDoc 是不包括注解的但如果声明注解时指定了 Documented就会被 JavaDoc 之类的工具处理所以注解类型信息就会被包括在生成的帮助文档中。 示例 Documented Target({ ElementType.TYPE, ElementType.METHOD }) public interface MyDocumented {public String value() default 这是Documented注解; } 测试类 MyDocumented public class DocumentedTest {/*** 测试document*/MyDocumentedpublic String Test() {return 百度搜索引擎;} }打开 Java 文件所在的目录分别输入如下两条命令行 javac MyDocumented.java DocumentedTest.java javadoc -d doc MyDocumented.java DocumentedTest.java运行成功后打开生成的帮助文档可以看到在类和方法上都保留了 MyDocument 的注解信息。 Target Target 注解用来指定一个注解的使用范围即被 Target 修饰的注解可以用在什么地方。Target 注解有一个成员变量value用来设置适用目标value 是 java.lang.annotation.ElementType 枚举类型的数组下表为 ElementType 常用的枚举常量。 自定义一个 MyTarget 注解使用范围为方法代码如下。 Target({ ElementType.METHOD }) public interface MyTarget { }class Test {MyTargetString name; }如上代码第 6 行会编译错误错误信息为 The annotation MyTarget is disallowed for this location提示此位置不允许使用注解 MyDocumentedMyTarget 不能修饰成员变量只能修饰方法。 Retention Retention 用于描述注解的生命周期也就是该注解被保留的时间长短。Retention 注解中的成员变量value用来设置保留策略value 是 java.lang.annotation.RetentionPolicy 枚举类型RetentionPolicy 有 3 个枚举常量如下所示。 SOURCE在源文件中有效即源文件保留CLASS在 class 文件中有效即 class 保留RUNTIME在运行时有效即运行时保留生命周期大小排序为 SOURCE CLASS RUNTIME前者能使用的地方后者一定也能使用。如果需要在运行时去动态获取注解信息那只能用 RUNTIME 注解如果要在编译时进行一些预处理操作比如生成一些辅助代码如 ButterKnife就用 CLASS 注解如果只是做一些检查性的操作比如 Override 和 SuppressWarnings则可选用 SOURCE 注解。 Inherited Inherited 是一个标记注解用来指定该注解可以被继承。使用 Inherited 注解的 Class 类表示这个注解可以被用于该 Class 类的子类。就是说如果某个类使用了被 Inherited 修饰的注解则其子类将自动具有该注解。 创建一个自定义注解代码如下 Target({ ElementType.TYPE }) Inherited Retention(RetentionPolicy.RUNTIME) public interface MyInherited { }测试类代码如下 MyInherited public class TestA {public static void main(String[] args) {System.out.println(TestA.class.getAnnotation(MyInherited.class));System.out.println(TestB.class.getAnnotation(MyInherited.class));System.out.println(TestC.class.getAnnotation(MyInherited.class));} }class TestB extends TestA { }class TestC extends TestB { }运行结果为 MyInherited() MyInherited() MyInherited()Repeatable Repeatable 注解是 Java 8 新增加的它允许在相同的程序元素中重复注解在需要对同一种注解多次使用时往往需要借助 Repeatable 注解。Java 8 版本以前同一个程序元素前最多只能有一个相同类型的注解如果需要在同一个元素前使用多个相同类型的注解则必须使用注解“容器”。 Java 8 之前的做法 public interface Roles {Role[] roles(); }public interface Roles {Role[] value(); }public class RoleTest {Roles(roles {Role(roleName role1), Role(roleName role2)})public String doString(){return 百度搜索引擎;} }Java 8 之后增加了重复注解使用方式如下 public interface Roles {Role[] value(); }Repeatable(Roles.class) public interface Role {String roleName(); }public class RoleTest {Role(roleName role1)Role(roleName role2)public String doString(){return 百度搜索引擎;} }不同的地方是创建重复注解 Role 时加上了 Repeatable 注解指向存储注解 Roles这样在使用时就可以直接重复使用 Role 注解。从上面例子看出使用 Repeatable 注解更符合常规思维可读性强一点。 Native 使用 Native 注解修饰成员变量则表示这个变量可以被本地代码引用常常被代码生成工具使用
http://www.ihoyoo.com/news/34825.html

相关文章:

  • dede的网站地图铜陵电子商务网站建设
  • 网站建设需要哪些南昌网站建设700起
  • 电脑做网站软件公司网站如何做水印
  • 个人主页网站设计代码厦门外贸网站建设报价
  • 自己做网站的图片某一网站seo策划方案
  • 电子商务网站建设不足网络推广是以企业产品或服务
  • 自学做网站多久我国中小企业500强
  • 织梦手机网站怎么修改永嘉网站开发公司
  • 深圳比邻网站建设阜南网站建设
  • 怎么给甲方做网站备案wordpress上传视频人50
  • soho网站建设页面设计师招聘
  • 东莞网站平台价格wordpress搭建论坛
  • 越秀网站建设麻涌东莞网站建设
  • 网站正在建设中色天使免费只做网站
  • 蛋糕网站设计seo营销技巧培训班
  • 制作化妆品网站网页设计与网站建设心得体会
  • 百度搜到网站西充企业网站建设
  • 中国建设银行分行网站网站二级菜单是什么意思
  • 做短裙的视频网站海葵音乐制作公司
  • 地图网站抓取保定网站建设咨询
  • 电子商务网站建设项目的阶段深圳自适应网站建设价格
  • 个人网站网页底部模板西安免费信息推广平台
  • 企业网站建设一般要素包括一人可以申请两个营业执照吗
  • 杭州拱墅网站建设静态网页模版
  • phpmysql网站模板长沙seo招聘
  • 旅游做攻略网站推广方式有哪些
  • android网站开发视频教程网站备案 地域
  • 建设银行网站-个人业务宝山网站推广
  • 送给做网站的锦旗语自己做微网站
  • 做网站的时候说需求的专业术语石景山附近的保安公司