- 浏览: 97063 次
- 性别:
文章分类
- 全部博客 (151)
- Spring-MVC学习 (5)
- 偶然间发现 (2)
- easyUi学习 (7)
- web项目相关技术 (4)
- java学习 (26)
- webService (4)
- 一些工具的安装使用 (7)
- js学习 (20)
- Sping学习 (7)
- mybatis学习 (5)
- 定时器 (4)
- oracle (2)
- JSP学习 (6)
- HTML一些标签 (1)
- web服务 (2)
- 偶尔得到的地址 (2)
- 常用的代码记录 (2)
- 设计模式 (1)
- java常使用的开源API (1)
- maven (1)
- Socket (1)
- nginx (2)
- jquery (3)
- poi (2)
- 写过的工具类 (19)
- 微信开发 (2)
- mysql (1)
- freemarker (2)
- ftp (1)
- 用过的软件 (1)
- jconsole (1)
- log4j (1)
- redis的简单入门使用 java调用redis (0)
- redis的使用 (2)
- 生活相关的 (1)
最新评论
-
chokee:
...
easyUi学习之开启行编辑模式增删改操作 -
lijie_insist:
就是有的界面需要显示天气啊!所以你要调用天气的接口啊 因为很多 ...
免费的天气接口的一个demo -
zhglance:
请问这是干什么用的呢?
免费的天气接口的一个demo
注解相当于一门标记语言,在程序中加入注解等于为程序打上某种标记,没加标示没有这种标记,以后javac编辑器,开发工具和其他程序可以利用反射来了解你的类和各种元素上有无任何标记,看你有什么标记就去做相应的事,标记可以加在包,类,方法,字段,方法的参数以及局部变量上
参考
java中有四种元注解,专门注解其他的注解,分别如下:
1.@Retention元注解 表示需要在什么级别保留该注解信息,也就是生命周期.可选的
RetentionPoicy参数有:
//RetentionPolicy.SOURCE: 停留在java源文件,被编译器丢掉
//RetentionPolicy.CLASS:停留在class文件中,但会被VM丢弃(默认)
/RetentionPolicy.RUNTIME:内存中的字节码,VM将在运行时也保留注解,因此可以通过反射机制读取注解的信息
2.@Target元注解,默认值为任何元素,表示该注解用于什么地方。
可用的ElementType参数包括:
//ElementType.CONSTRUCTOR: 构造器声明
//ElementType.FIELD: 成员变量、对象、属性(包括enum实例)
//ElementType.LOCAL_VARIABLE: 局部变量声明
//ElementType.METHOD方法声明
//ElementType.PACKAGE包声明
//ElementType.PARAMETER参数声明
//ElementType.TYPE类,接口或者enum声明
3.@Documented将注解包含在JavaDoc中
4.@Inheried允许子类继承父类中的注解
下面是我写的一个简单例子:
//简单的注解
//简单的枚举
最后写一个测试类来测试:
结果如下:
参考
http://www.cnblogs.com/linjiqin/archive/2011/02/16/1956426.html学习时候写的demo
java中有四种元注解,专门注解其他的注解,分别如下:
1.@Retention元注解 表示需要在什么级别保留该注解信息,也就是生命周期.可选的
RetentionPoicy参数有:
//RetentionPolicy.SOURCE: 停留在java源文件,被编译器丢掉
//RetentionPolicy.CLASS:停留在class文件中,但会被VM丢弃(默认)
/RetentionPolicy.RUNTIME:内存中的字节码,VM将在运行时也保留注解,因此可以通过反射机制读取注解的信息
2.@Target元注解,默认值为任何元素,表示该注解用于什么地方。
可用的ElementType参数包括:
//ElementType.CONSTRUCTOR: 构造器声明
//ElementType.FIELD: 成员变量、对象、属性(包括enum实例)
//ElementType.LOCAL_VARIABLE: 局部变量声明
//ElementType.METHOD方法声明
//ElementType.PACKAGE包声明
//ElementType.PARAMETER参数声明
//ElementType.TYPE类,接口或者enum声明
3.@Documented将注解包含在JavaDoc中
4.@Inheried允许子类继承父类中的注解
下面是我写的一个简单例子:
package test.annotations; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; import test.enums.Gender; @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.METHOD,ElementType.TYPE}) public @interface MyAnnotation { //为注解添加属性 String color(); //为属性添加默认值 String value() default "我是注解"; // int[] array() default {1,2,3,4}; //添加一个枚举类型 Gender gender() default Gender.MAN; //添加一个注解类型 MetaAnnotation metaAnnotation() default @MetaAnnotation(brithday="2014年5-5"); }
//简单的注解
package test.annotations; public @interface MetaAnnotation { String brithday(); }
//简单的枚举
package test.enums; public enum Gender { MAN{ public String getName(){ return "男"; } }, WOMEN{ public String getName(){ return "女"; } }; public abstract String getName(); }
最后写一个测试类来测试:
package test.app; import test.annotations.MetaAnnotation; import test.annotations.MyAnnotation; import test.enums.Gender; //调用注解并赋值 @MyAnnotation(color="red",array={1,2,3},gender=Gender.MAN,metaAnnotation=@MetaAnnotation(brithday="2014年5-5")) public class AnnotationApp { public static void main(String[] args){ //检查AnnotationApp类是否有MyAnnotation注解 if(AnnotationApp.class.isAnnotationPresent(MyAnnotation.class)){ //若存在就获取注解 MyAnnotation myAnnotation = AnnotationApp.class.getAnnotation(MyAnnotation.class); System.out.println(myAnnotation); //获得注解的属性 int[] arrs = myAnnotation.array(); for(int arr:arrs){ System.out.println(arr); } System.out.println(myAnnotation.color()); System.out.println(myAnnotation.gender()); //获取注解的注解属性 MetaAnnotation metaAnno = myAnnotation.metaAnnotation(); System.out.println(metaAnno.brithday()); System.out.println(myAnnotation.value()); } } }
结果如下:
发表评论
-
ajax的分页分页请求,通过ajax来分页
2015-12-01 14:55 446这里面通过自定义标签实现的,因为项目没有采用jsp模板而是用的 ... -
java学习之JAXB解析xml
2015-08-17 09:07 909时间仓促,只记录代码 //实体类 package com.w ... -
生成验证码的方法
2015-07-17 08:43 2忘了在哪里参考过代码,后来自己参照了写了这一段code pac ... -
javax.mail邮件发送返回状态吗
2015-07-02 17:35 1587项目需要集成邮件发送,之前在.net下写过smtp的邮 ... -
javax.mail邮件发送
2015-06-30 12:50 0package com.demo.common; impor ... -
java的(PO,VO,TO,BO,DAO,POJO)解释
2015-06-04 11:31 430原地址:http://www.cnblogs. ... -
JDBC学习
2015-04-21 10:02 288原文来自:http://blog.csdn.net/fight ... -
j2ee web项目的基本结构
2015-03-20 14:50 525原地址:http://www.cnblogs.co ... -
HTTP 返回的状态码的含义
2015-03-20 14:38 433在网上看到的,总结的蛮 ... -
java学习之try catch finally中的return语句执行
2015-03-10 14:21 530http://blog.csdn.net/kavensu/ar ... -
java反射机制的学习
2015-03-06 13:39 346http://blog.csdn.net/zzjjiandan ... -
java学习之时间类的使用
2015-03-06 10:26 467有时候要对时间进行各方面的操作,这里就记录下最近使用到的对时间 ... -
为什么接口的属性用public static final修饰
2015-03-05 09:14 551每次只是看了看.好多都没去实践和去想! 自己写了个接口才会想到 ... -
正则表达式的学习
2015-03-04 11:10 340http://help.locoy.com/Document/ ... -
面向对象的特征
2015-03-02 17:56 375今天看到一篇文章对面 ... -
Class.forName("className"),class.getClass,class.class区别
2015-02-27 17:43 382今天看java.lang.reflect包中的信息时,想到了这 ... -
java调用webservice(asmx)的例子
2015-02-04 16:54 429转自:http://www.blogjava.net/jerr ... -
java学习之流的学习
2015-01-21 14:12 375因为经常用到流,并且发现java中的数据流的确很多种类,而自己 ... -
java学习之图片上传,下载显示demo
2015-01-19 10:43 2547每次都是用的框架来弄 ... -
java学习之String的一些处理函数
2014-12-12 17:17 561前两天开发一个关于解析数据的一个小功能,发现需要大肆的用到St ...
相关推荐
Java Annotation注解技术是自Java SE 5.0版本引入的一种元编程机制,它允许程序员在源代码的各个层面(如类、方法、变量等)添加元数据,以供编译器、JVM或第三方工具在编译时或运行时进行处理。Annotation简化了...
### Java自定义注解Annotation的使用 #### 1. 前言 自从JDK 1.5引入了注解这一特性以来,它已经成为Java开发中的一个重要组成部分。注解最初是为了推动EJB 3.0的普及和发展而设计的,其目的是减少配置文件的使用,...
Java.Annotation注解.part4
Java.Annotation注解.part1
Java Annotation,也称为注解,是Java编程语言中的一种元数据机制,用于向编译器、JVM或工具提供有关代码的附加信息。这些信息不直接影响代码的执行,但可以被编译器或运行时环境用来执行特定的操作,如代码分析、...
Java.Annotation注解.part3
Java.Annotation注解.part2
### Spring框架中的Annotation注解详解 #### 一、Spring与Annotation的基本概念 Spring框架通过引入Annotation,极大地简化了Java开发中的依赖注入(Dependency Injection, DI)和面向切面编程(AOP)的过程。...
Java 注解(Annotation) - 请认准 ih0qtq
在Struts2中,Annotation注解的引入为开发者提供了更加灵活和便捷的配置方式,使得无需在XML配置文件中进行繁琐的设置,可以直接在类或方法上通过注解来进行配置。本文将深入探讨Struts2中的Annotation配置,以及...
如果你想知道java annotation是什么?你可以看看
该项目的核心是基于Java语言实现的MVC架构,采用Annotation注解技术进行实现。项目源码由69个文件组成,涵盖24个类文件、23个Java源文件、7个JSP页面文件、3个XML配置文件以及少量其他类型文件。该项目是jeecg第16期...
Java 5引入的注解(Annotation)是一种元数据,它提供了在代码中嵌入信息的方式,这些信息可以被编译器、JVM或其他工具在编译时或运行时使用。注解可以用来简化代码,提高可维护性,并帮助工具进行静态分析。 1. ...
- 同一类型的注解在同一域中只能注解一次。 - 注解不能被继承,除非使用`@Inherited`元注解。 在实际编程中,通过自定义注解,开发者可以创建出符合特定需求的元数据,这在框架开发、配置管理、代码分析等方面...
通过上述示例中的JavaAnnotation压缩包,你可能包含了注解的使用示例、源码以及相关的博客文章。源码可以帮助你理解注解的实际应用,而博客文章可能深入解释了注解的工作原理和最佳实践。学习这些材料,将有助于你...
Java注解(Annotation)是Java语言的一个重要特性,它为元数据提供了强大的支持。元数据是一种描述数据的数据,可以提供有关代码的附加信息,而这些信息并不直接影响代码的执行。在Java中,注解用于向编译器、JVM或...
### Annotation注解的深入解析与应用 #### 一、Annotation概览 ##### 1.1 何为元数据 元数据,在计算机科学中,是指用于描述数据的数据,它提供了关于数据本身的附加信息,有助于理解、解释和管理数据。在编程...
Java自定义注解(Annotation)是Java编程语言中的一个重要特性,自JDK1.5引入以来,它极大地简化了代码的管理和维护。注解提供了一种元数据的方式,允许程序员在源代码中嵌入额外的信息,这些信息可以被编译器、...
Java注解(Annotation)是Java语言提供的一种元数据机制,用于向编译器或JVM提供额外的信息。这些信息可以用来验证代码、控制代码生成、配置应用等。注解是自Java 5版本引入的特性,它使得程序员可以在源代码中嵌入...