- 浏览: 700299 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
javenwong:
你好,我现在需要给一个Composite做圆角处理,不知道怎么 ...
SWT圆角窗口绘制 -
whao189:
回家了详细看看
Storyboard 解析 -
zhaoyubetter:
确实够麻烦
IOS 开发环境,证书和授权文件是什么? -
datawarehouse:
一直对这两个认为是一样的,现在学习了。
Oracle DB中的Schema -
yulanfeiyang:
顶,mark
下载音频,在IOS设备上播放
注解(Annotation) 为我们在代码中天界信息提供了一种形式化的方法,是我们可以在稍后
某个时刻方便地使用这些数据(通过 解析注解 来使用这些数据)。
注解的语法比较简单,除了@符号的使用以外,它基本上与java的固有语法一致,java内置了三种
注解,定义在java.lang包中。
@Override 表示当前方法是覆盖父类的方法。
@Deprecated 表示当前元素是不赞成使用的。
@SuppressWarnings 表示关闭一些不当的编译器警告信息。
下面是一个定义注解的实例
package Test_annotation; import java.lang.annotation.Documented; import java.lang.annotation.Inherited; import java.lang.annotation.Retention; import java.lang.annotation.Target; import java.lang.annotation.ElementType; import java.lang.annotation.RetentionPolicy; /* * 元注解@Target,@Retention,@Documented,@Inherited * * @Target 表示该注解用于什么地方,可能的 ElemenetType 参数包括: * ElemenetType.CONSTRUCTOR 构造器声明 * ElemenetType.FIELD 域声明(包括 enum 实例) * ElemenetType.LOCAL_VARIABLE 局部变量声明 * ElemenetType.METHOD 方法声明 * ElemenetType.PACKAGE 包声明 * ElemenetType.PARAMETER 参数声明 * ElemenetType.TYPE 类,接口(包括注解类型)或enum声明 * * @Retention 表示在什么级别保存该注解信息。可选的 RetentionPolicy 参数包括: * RetentionPolicy.SOURCE 注解将被编译器丢弃 * RetentionPolicy.CLASS 注解在class文件中可用,但会被VM丢弃 * RetentionPolicy.RUNTIME VM将在运行期也保留注释,因此可以通过反射机制读取注解的信息。 * * @Documented 将此注解包含在 javadoc 中 * * @Inherited 允许子类继承父类中的注解 * */ @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited /* * 定义注解 Test * 注解中含有两个元素 id 和 description * description 元素 有默认值 "no description" */ public @interface Test { public int id(); public String description() default "no description"; }
下面是一个使用注解 和 解析注解的实例
package Test_annotation; import java.lang.reflect.Method; public class Test_1 { /* * 被注解的三个方法 */ @Test(id = 1, description = "hello method_1") public void method_1() { } @Test(id = 2) public void method_2() { } @Test(id = 3, description = "last method") public void method_3() { } /* * 解析注解,将Test_1类 所有被注解方法 的信息打印出来 */ public static void main(String[] args) { Method[] methods = Test_1.class.getDeclaredMethods(); for (Method method : methods) { /* * 判断方法中是否有指定注解类型的注解 */ boolean hasAnnotation = method.isAnnotationPresent(Test.class); if (hasAnnotation) { /* * 根据注解类型返回方法的指定类型注解 */ Test annotation = method.getAnnotation(Test.class); System.out.println("Test( method = " + method.getName() + " , id = " + annotation.id() + " , description = " + annotation.description() + " )"); } } } }
输出结果如下:
Test( method = method_1 , id = 1 , description = hello method_1 )
Test( method = method_2 , id = 2 , description = no description )
Test( method = method_3 , id = 3 , description = last method )
发表评论
-
JVM内存管理:深入Java内存区域与OOM
2011-07-12 16:03 864原帖地址:http://icyfenix.iteye.com/ ... -
java面试题~
2010-03-27 14:01 1108一、xml有哪些解析技术 ... -
bat,sh文件执行Java
2009-12-13 21:49 30761.xxx.bat echo using Java %JAV ... -
XML CDATA的作用
2009-11-27 12:40 1533当你用FLASH和xml结合做网站应用程序时,例如你做在我研究 ... -
Transient 关键字用法
2009-11-24 16:49 7701、 java的serialization提供了一个 ... -
serialVersionUID的作用
2009-11-23 12:20 1791serialVersionUID 用来表明类的不同版本间的兼容 ... -
Log4j使用总结
2009-11-07 11:33 773一、介绍 Log4j是Apache的 ... -
jdom学习:读取xml文件
2009-11-02 12:33 980<?xml version="1.0" ... -
java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?
2009-11-01 23:45 2882在java.io包中还有许多其他的流,主要是为了提高性能和使用 ... -
Java构造函数的调用顺序
2009-09-20 17:19 1613在多级继承的情况下,将从继承树的最上层的父类开始,依次执行各个 ... -
字符串"\"替换问题
2009-08-04 15:44 808String s = "F:\\das\\src\\ ... -
java的volatile是什么意思
2009-08-03 10:01 1463我们知道,在Java中 ... -
数组和容器的排序
2009-06-23 18:11 976排序方法一: package Stuty_Array; ... -
小常识
2009-06-19 10:48 8011. JVM 中, 线程持有Stack, Stack随线程创建 ... -
回顾Java值传递、引用传递
2009-06-18 15:07 1485public class ParamTest { ... -
计算两个日期之间相差的月数
2009-05-27 00:18 1579/** * 计算两个日期之间相差的月数 ... -
在JAVA中读取文件乱码的解决办法
2009-05-20 13:54 1263public static String encodin = ... -
保存Java程序状态及设置Properties文件
2009-05-18 16:11 1005使用Properties文件来保存.Properties文件的 ... -
JavaBeans的属性
2009-05-04 15:41 867JavaBeans的属性与一般Java程序中所指的属性,或者说 ... -
String 的contains方法
2009-03-10 16:55 975当且仅当此字符串包含指定的值时,返回 true。
相关推荐
主题:JAVA 注解示例 详解 注解(Annotation) 相当于一种标记,在程序中加了注解就等于为程序打上了某种标记。以后,java编译器、开发工具和其它程序可以使用反射来了解你的类及各种元素上有无某种标记,找到有...
本文是我在业余时间学习spring注解注入之后的整理总结,希望能给对spring注入技术感兴趣和正在学习spring注入的同学们一些帮助。文中的内容都是我自己的摸索总结,当中难免会有偏差和错误,希望spring达人能够及时...
13.2.4 示例 414 13.3 网上书店程序 418 13.4 小结 440 第14章 jsp开发的两种模型 441 14.1 模型1 441 14.2 模型2 445 14.3 小结 449 第15章 标签库(tag library) 450 15.1 标签库api 450 15.1.1 标签的...
本文是我在业余时间学习spring注解注入之后的整理总结,希望能给对spring注入技术感兴趣和正在学习spring注入的同学们一些帮助。文中的内容都是我自己的摸索总结,当中难免会有偏差和错误,希望spring达人能够及时...
本文主要介绍Java 中的注解,这里提供了详细的相关资料,及示例代码,帮助大家学习理解,有兴趣的小伙伴可以参考下
13.2.4 示例 414 13.3 网上书店程序 418 13.4 小结 440 第14章 jsp开发的两种模型 441 14.1 模型1 441 14.2 模型2 445 14.3 小结 449 第15章 标签库(tag library) 450 15.1 标签库api 450 15.1.1 标签的...
13.2.4 示例 414 13.3 网上书店程序 418 13.4 小结 440 第14章 jsp开发的两种模型 441 14.1 模型1 441 14.2 模型2 445 14.3 小结 449 第15章 标签库(tag library) 450 15.1 标签库api 450 15.1.1 标签的...
13.2.4 示例 414 13.3 网上书店程序 418 13.4 小结 440 第14章 jsp开发的两种模型 441 14.1 模型1 441 14.2 模型2 445 14.3 小结 449 第15章 标签库(tag library) 450 15.1 标签库api 450 15.1.1 标签的...
主要讲解了System类、Object类、Arrays类、Cloneable接口、IO系统输入输出类及装饰类、IO系统文本读写工具类、IO系统二进制读写工具类、对象序列化工具类、File类及文件搜索工具类、java异常机制及自定义异常类、...
主要介绍了java @Profile注解详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2.3.4 Java代码中的注释23 2.3.5 常见错误解析24 2.4 Java类库组织结构和文档27 2.5 Java虚拟机简介28 2.6 Java技术两种核心运行机制29 2.7 上机练习30 第3章 3.1 变量32 3.1.1 什么是变量32 3.1.2 为什么需要变量32...
主要介绍了java元注解@Inherited的使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
主要给大家介绍了关于Java利用反射如何查找使用指定注解的类的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
本人觉得该示例是对该模式的非常精典的说明,于是花点功夫来翻写它,因为他的代码没有注释说明该模式的设计思想怎样体现在代码中去,所以,本人结合代码注释了关键代码的中文意义说明作者怎样表示该设计模式的,以...
最近有所了解到自定义注解的应用,因此学习了一下,下面这篇文章主要给大家介绍了关于Java中自定义注解介绍与使用场景的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧
《Java 基础核心总结》 Java 概述 什么是 Java2 Java 的特点Java 开发环境 JDK JRE Java 开发环境配置 Java 基本语法 数据类型基础语法运算符 Java 执行控制流程条件语句 if 条件语句 if...else 条件语句if...else ...
MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs (Plain Old Java Objects, 普通的 Java 对象)映射成数据库中的记录。 以下是 MyBatis 的主要特点: 简单易学:MyBatis 框架结构...