`
xuehongliang
  • 浏览: 93943 次
  • 性别: Icon_minigender_1
  • 来自: 辽宁
社区版块
存档分类
最新评论

JDK5.0新特性的学习--元数据

    博客分类:
  • java
阅读更多

新建一个注释类型,这个类型指明了一本名著的作者和他的email。

java 代码
  1. import java.lang.annotation.*;    
  2.   
  3. @Retention(RetentionPolicy.RUNTIME)    
  4.   
  5. @Target(ElementType.METHOD)    
  6.   
  7. public @interface BookAuthor  {    
  8.   
  9. String name();     
  10.   
  11. String email();    
  12.   
  13. }   
  14.   

 
使用这个注释为我们的方法加上注解: 

java 代码
  1. import java.lang.annotation.Annotation;    
  2.   
  3. public class MetadataShow {    
  4.   
  5.     @BookAuthor(name='曹雪芹',email='caoxueqin@hongloumeng.books')     
  6.   
  7.     public void introHongLouMeng() {    
  8.   
  9.         System.out.println('这是一本好书啊');    
  10.   
  11.     }    
  12.   
  13.   public static void main(String[] args)  {    
  14.   
  15.         MetadataShow metadata = new MetadataShow();    
  16.   
  17.         try {    
  18.   
  19.             Annotation[] annotation = metadata.getClass().getMethod('introHongLouMeng').getAnnotations();    
  20.   
  21.             for(Annotation  a : annotation) {    
  22.   
  23.                 System.out.printf('作者:%s%n', ((BookAuthor)a).name());    
  24.   
  25.                 System.out.printf('他的电子邮件(可能已被注销):%s%n', ((BookAuthor)a).email());    
  26.   
  27.             }    
  28.   
  29.         }    
  30.   
  31.         catch (SecurityException e) {    
  32.   
  33.             e.printStackTrace();    
  34.   
  35.         }    
  36.   
  37.         catch (NoSuchMethodException e) {    
  38.   
  39.             e.printStackTrace();    
  40.   
  41.         }    
  42.   
  43.     }    
  44.   
  45. }    
  46.   

 

请注意,要想在程序运行时能读取这些注释,需要在注释的声明的时候加上

@Retention(RetentionPolicy.RUNTIME)

@Target(ElementType.METHOD) //也可能时其他类型,如针对声明的注释

这是对注释的注释。

编译这两个文件:

javac -source 5 -target 5 -d bin src/com/kuaff/jdk5/*.java

分享到:
评论

相关推荐

    JAVA2核心技术第7版卷2高级特性-中文版

    高级特性》是Java 2技术权威指南,全面覆盖Java 2技术的高级主题,包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,...

    Java元数据详解

    JDK5.0中的新特性(注解) 物有所值,自己整理的.

    java注解元数据

    定义:注解(Annotation),也叫元数据。...它是JDK5.0及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。

    JAVA2核心技术(中文的PDF).part4.rar

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、JavaBean、Java安全模式、XML、注释、元数据等主题,同时涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发...

    JAVA2核心技术第1卷.基础知识7th.part01(中文清晰版)

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、JavaBean、Java安全模式、XML、注释、元数据等主题,同时涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发...

    JAVA2核心技术第7版卷2高级特性_1

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,同量涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员...

    JAVA2核心技术第7版卷2高级特性_3

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,同量涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员...

    JAVA2核心技术第7版卷2高级特性_7

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,同量涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员...

    JAVA2核心技术第7版卷2高级特性_8

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,同量涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员...

    JAVA2核心技术第7版卷2高级特性_10

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,同量涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员...

    JAVA2核心技术第7版卷2高级特性_4

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,同量涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员...

    JAVA2核心技术第7版卷2高级特性_11

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,同量涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员...

    JAVA2核心技术第7版卷2高级特性_2

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,同量涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员...

    JAVA2核心技术第7版卷2高级特性_9

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,同量涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员...

    JAVA2核心技术第7版卷2高级特性_6

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,同量涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员...

    JAVA2核心技术第7版卷2高级特性_5

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,同量涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员...

    JAVA2核心技术第7版卷2高级特性_12

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、Javaean、Java安全模式、XML、注释、元数据等主题,同量涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员...

    JPA深度刘宝宝剖析版第一讲

    ORM 映射元数据:JPA 支持 XML 和 JDK 5.0 注解两种元数据的形式,元数据描述对象和表之间的映射关系,框架据此将实体对象持久化到数据库表中。 JPA 的 API:用来操作实体对象,执行CRUD操作,框架在后台完成所有...

    JAVA2核心技术(中文的PDF).part3.rar

    包括:多线程、集合框架、网络API、数据库编程、分布式对象等,深入探究了Swing、Java 2D API、JavaBean、Java安全模式、XML、注释、元数据等主题,同时涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发...

    Java 2核心技术 卷II:高级特性(第七版).part1

    深入探究了Swing、Java 2D API、JavaBean、Java安全模式、XML、注释、元数据等主题,同时涉及本地方法、国际化以及JDK 5.0的内容。本书适合软件开发人员、高等院校学生和教师参考。. <br>本书包括Java 2平台标准...

Global site tag (gtag.js) - Google Analytics