java注解学习笔记
2016-07-14 15:48
323 查看
java的注解
1.jdk中的注解: a,@Override //用来表示这个方法继承了父类或接口
b,@Deprecated //表示这个方法我在父类中不想要了,但是不能删掉,因为别人可能用了我的这个方法,删了别人会报错.
c.@Suppvisewarnings("deprecation") //当我们使用被标记@Deprecated的方法时,编译器会警告我们,这个标记用于消除这种警告
2常见第三方中的注解:
如Spring和Mybatis中的注解.
注解的分类:按照运行机制分, a分为源码注解:注解只在源码中存在,编译以后就在class中不存在了.jdk中的注解都是源码注解
b编译时的注解:在源码中和class中都存在.
c运行时的注解:在运行时也存在,甚至会影响我们程序运行的逻辑.
按照来源来分,又分为来自jdk的注解,来自第三方的注解,我们自己定义的注解
自定义注解:
自定义注解的定义:
@Target(ElementType.METHOD,ElementType.TYPE) //元注解,用来标识注解的注解 . 这个用来标识这个注解的的作用域:类,方法,域上
@Retention //标识注解是编译时注解,运行时注解还是源码注解
@Inherited //注解是否可以被子类继承,当注解用在父类的方法时不会被子类继承,用在interface上时,也不会被继承
@Documented //b
public @interface Description{ //成员类型受限,必须是原生基本类型还有String,Class等.可以没有成员,称为标识注解
Sring desc(); //参数必须以无参数,无异常的方式来声明,当只有一个成员时,成员名必须命名为value
int age() default 18 //可以设默认值
}
上述注解使用的方法: @Description(desc="jweicjwe",age=29)
然后在使用的过程中,我们可以用反射机制来获取类,方法上的注解的信息.
1.jdk中的注解: a,@Override //用来表示这个方法继承了父类或接口
b,@Deprecated //表示这个方法我在父类中不想要了,但是不能删掉,因为别人可能用了我的这个方法,删了别人会报错.
c.@Suppvisewarnings("deprecation") //当我们使用被标记@Deprecated的方法时,编译器会警告我们,这个标记用于消除这种警告
2常见第三方中的注解:
如Spring和Mybatis中的注解.
注解的分类:按照运行机制分, a分为源码注解:注解只在源码中存在,编译以后就在class中不存在了.jdk中的注解都是源码注解
b编译时的注解:在源码中和class中都存在.
c运行时的注解:在运行时也存在,甚至会影响我们程序运行的逻辑.
按照来源来分,又分为来自jdk的注解,来自第三方的注解,我们自己定义的注解
自定义注解:
自定义注解的定义:
@Target(ElementType.METHOD,ElementType.TYPE) //元注解,用来标识注解的注解 . 这个用来标识这个注解的的作用域:类,方法,域上
@Retention //标识注解是编译时注解,运行时注解还是源码注解
@Inherited //注解是否可以被子类继承,当注解用在父类的方法时不会被子类继承,用在interface上时,也不会被继承
@Documented //b
public @interface Description{ //成员类型受限,必须是原生基本类型还有String,Class等.可以没有成员,称为标识注解
Sring desc(); //参数必须以无参数,无异常的方式来声明,当只有一个成员时,成员名必须命名为value
int age() default 18 //可以设默认值
}
上述注解使用的方法: @Description(desc="jweicjwe",age=29)
然后在使用的过程中,我们可以用反射机制来获取类,方法上的注解的信息.
相关文章推荐
- com.sun.tools.javac.Main
- MyEclipse 快捷键问题
- Java IO操作——文件操作类File的使用
- Eclipse SVN冲突解决
- 用VisualVM远程监控阿里云ECS上的Java进程
- java cloneable以及如何判断一个字符串是否为数字。
- 两个最基本的java回收算法
- Struts2+IBatis+ExtJS的JSON序列化异常
- 详解Java中instanceof运算符
- Spring MVC springmvc学习笔记--json--返回json的日期格式问题
- android genymation eclipse安装
- Java集成Weka做线性回归的例子
- java加载机制整理
- 三种算法求最大子段和问题——Java实现
- [置顶] 一道Java集合框架题
- 一道Java集合框架题
- java特点
- java学习之 数组排序-选择排序
- JAVA并发编程学习笔记之ReentrantLock
- 二进制、八进制、十进制、十六进制之间的转换