`
xuehongliang
  • 浏览: 95169 次
  • 性别: 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

分享到:
评论

相关推荐

    JDK 5.0.zip

    5. **注解(Annotations)**:注解提供了一种元数据机制,可以将信息附加到源代码上,而这些信息可以被编译器或运行时环境用来执行各种处理。注解的应用包括编译时检查、运行时反射、持久化、代码生成等。 6. **...

    JDK5.0新特性 常量 、枚举、 for each、反射

    JDK 5.0引入了注解(Annotation),允许开发者在源代码中添加元数据,这其中包括了`@Deprecated`和`@Override`等预定义注解。`@Deprecated`标记不再推荐使用的API,编译器会发出警告。而`@Override`确保方法是重写...

    jdk5.0新特性实例讲解

    Java JDK 5.0,又称为JDK 1.5,是Java开发工具包的一个重要升级,它引入了大量的新特性和改进,极大地提升了Java编程的...而"jdk5.0新特征.txt"则可能包含了对所有新特性的详细描述和使用示例,是深入学习的好资源。

    JDK5.0新特性

    以上就是JDK 5.0中的一些重要新特性,这些特性极大地推动了Java语言的发展,使其在软件开发领域保持了强大的竞争力。通过学习和掌握这些特性,开发者可以编写出更加高效、健壮和易于维护的代码。

    jdk5.0新特性汇总(超级详细)

    ### JDK 5.0 新特性详解 #### 一、增强的 for 循环(ForEach Loop) JDK 5.0 引入了增强的 `for` 循环,也称为 foreach 循环,用于简化对集合和数组的操作。这种循环语法更加简洁,易于阅读。 **示例代码:** ``...

    良葛格JDK5.0学习笔记

    通过深入学习《良葛格JDK5.0学习笔记》,开发者能够全面了解并熟练运用这些新特性,提升代码质量和效率,更好地适应Java编程的新时代。这份笔记对于Java初学者和有一定经验的开发者来说都是一份宝贵的参考资料。

    良葛格Java JDK 5.0学习笔记

    Java JDK 5.0是Java发展历程中的一个重要里程碑,它引入了许多新特性,极大地提升了开发效率和代码质量。这里,我们将详细探讨这个版本的关键知识点,帮助初学者更好地理解和掌握Java编程。 1. **自动类型推断(var...

    良葛格Java JDK 5.0学习笔记[可打印]

    Java JDK 5.0是Java开发的一个里程碑版本,它引入了许多重要的新特性和改进,极大地提升了开发效率和代码质量。良葛格的Java JDK 5.0学习笔记是一份宝贵的资源,适合初学者和有经验的开发者回顾这个版本的关键概念。...

    JDK5.0新特性源代码

    在这个名为“JDK5.0新特性源代码”的压缩包中,我们可以期待找到与这些关键特性相关的源代码示例。以下是JDK 5.0引入的一些核心新特性及其详细解释: 1. **泛型(Generics)**:泛型允许在类、接口和方法中声明类型...

    JDK 5.0的新特性

    其中最引人注目的新特性之一就是Annotations(注解),它为元数据提供了新的编程模型,使得开发者可以更加便捷地进行代码的编译、部署以及运行时的检查。 注解是一种在源代码中嵌入元数据的方式,它可以提供有关...

    JDK5.0的11个主要新特征

    JDK5.0是Java开发的一个重要里程碑,它引入了11个主要的新特性,极大地提升了编程效率和代码安全性。以下是对这些特性的详细说明: 1. 泛型(Generic) 泛型的引入是为了解决类型安全问题,避免在运行时进行不必要...

    jdk 5.0 ban

    5. **变量注解(Variable Annotations)**:在JDK 5.0中,注解不仅可以应用于类、方法、接口等,还可以应用于变量,提供了更多的元数据信息。 6. **类型安全的异构容器(Type-Safe Heterogeneous Container)**:...

    (Java 2 SDK)JDK 5.0 的源代码

    以上就是JDK 5.0中的一些关键特性,这些源代码的分析有助于深入理解Java平台的工作原理,对于学习和优化Java代码具有重要的价值。通过阅读和研究这些源文件,开发者可以更好地掌握Java编程的精髓,提升自己的编程...

    良葛格Java JDK 5.0学习笔记ch05

    Java JDK 5.0是Java发展历程中的一个重要里程碑,它引入了许多新特性,极大地提升了开发效率和代码质量。在这个"良葛格Java JDK 5.0学习笔记ch05"中,我们将深入探讨其中的关键知识点。 一、泛型 Java 5.0引入了...

    Java JDK 5.0学习笔记

    Java JDK 5.0是Java发展历程中的一个重要里程碑,它的发布带来了许多创新特性和改进,极大地提升了开发效率和代码质量。本学习笔记旨在帮助新手全面理解并掌握Java 5.0的关键知识点。 一、泛型(Generics) Java ...

    JDK 5.0中文版API

    JDK 5.0是一个重要的里程碑,它引入了许多创新特性,极大地提升了Java的效率和可维护性。这篇文档将详细解析JDK 5.0中文版API,帮助初学者和有经验的开发者更好地理解和利用这一强大的资源。 ### 类库概述 JDK 5.0...

    java jdk 5.0学习

    4. **变量注解(Variable Annotations)**:除了在方法和类上使用注解,JDK 5.0允许在变量声明上使用注解,这为编译器和工具提供了更多的元数据信息,如非null检查。 5. **增强的for循环(foreach)**:也被称为...

    良葛格 JDK 5.0 学习笔记

    JDK 5.0,也被称为Java SE 5.0,是Java发展历程中的一次重大更新,引入了许多关键性的新特性,对Java编程语言产生了深远影响。以下是对这个版本中核心知识点的详细解释: 1. **泛型(Generics)**:泛型是JDK 5.0...

Global site tag (gtag.js) - Google Analytics