黑马程序员--java中的注解

---------------------- android培训java培训、期待与您交流! ----------------------


JDK1.5引入的新特性其中之一--注解;


1.什么是注解?
注解就是传递给java编译器或者开发工具某种信息
相当于一种标记,在程序中加了注解就相当于打上了某种标记,java编译器或者开发工具可以通过反射来获取类中添加的任何标记
判断注解的作用是什么,java虚拟机或开发工具就会去干相应的事
注解可以加在包、类、方法、字段或者方法的参数上都可以
直接以@打头。注解就相当于一个特殊的类,添加了什么注解,就相当于调用了什么类。


2.注解的原理


    1.注解类
    publci @interface A{}

2.调用了注解类的类
@A
public class B{}

3.对调用了注解类的类进行反射操作的类
public class C{
B.class.isAnnotionPersent(A.class);
A a = B.class.getAnnotion(A.class);
}

下面我们通过一个自定义实例来模拟注解原理


import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;


@Retention(RetentionPolicy.RUNTIME)  //把自定义注解保存到运行时
public @interface DefinitionAnnotion {  //自定义一个DefinitionAnnotion注解

}

@DefinitionAnnotion   //引用自定义注解
public class AnnotionTest {  //定义个调用了注解类的类


public static void main(String[] args) { //大家可把main方法看成是 对调用注解类的类进行反射操作的类

if(AnnotionTest.class.isAnnotationPresent(DefinitionAnnotion.class)){ //判断存不存在DefinitionAnnotion注解类的字节码

DefinitionAnnotion dfa = (DefinitionAnnotion)AnnotionTest.class.getAnnotation(DefinitionAnnotion.class);//存在就取的DefinitionAnnotion
System.out.println(dfa);
}
}


}
这样我们就通过反射成功获得了注解,并进行相应操作。


---------------------- android培训java培训、期待与您交流! ----------------------

详细请查看:http://edu.csdn.net/heima

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值