黑马程序员-注解

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

 

注解

Annotation注解:

注解是jdk1.5的新特性,它相当于一种标记,在程序中加了注解就等于为程序打上某种标记,没加,则等于没有某种标记,以后javac编译器,开发工具和其他程序可以用反射来了解你的类及各种元素上是否有标记,就会根据注解的内容干相应的事,标记可以加在包,,方法,字段,方法的参数上

 

Jdk1.5定义了7个注解接口,其中有3个是规则接口,可以用它们来注释源码中的各个项,其他4个是元注释,用于描述注释接口的行为属性:7个注释接口是:

注解

应用场合

目的

@Deprecated

任意

用于将条目标记为过时 

@SuppressWarnings

除了包和注释之外的所有情况

阻止某个给定的警告信息

@Override

方法

检查方法是否是覆盖某个类的方法

@Target

注解

指定可以应用这个注解在哪些条目

@Retention

注解

指定这个注解保留在哪个阶段

@Documented

注解

指定这个注解应该包含在注解条目的文档中

@Inherited

注解

指定一个注解,当它应用于某个类的时候,能够自动被它的子类继承

 

注解详解:

      规则注解:

 @Deprecated:

      这是一个比较强大的注解,它强大的一点就是能够标记在任何不建议使用的条目上,当一个曾经写的代码过时了,需要些新的代码时,可以再原来的代码上添加@Deprecated注解,告诉别人:这是一个过时的代码,你可不要再用咯!

@SuppressWarnings:

       这个注解里面要添加一些参数,这些参数通常是一些警告注解,比如Deprecated , SuppressWarnings的作用就是告诉编译器:我知道这里有警告,你不用管我,让我通过.

@Override:

      这个注解从名称上可以直观得知道它的作用,没错,它就是标记在一些从父类覆盖的方法上,表示这是一个覆盖父类的方法.

      

       元注释:

@Target:

      用于标记一个注解,指定某个注解可以应用在哪些条目.以下是@Target注解的元素类型:

元素类型

注解适用场合

ANNOTATION_TYPE

注解类型声明

PACKAGE

TYPE

,接口,枚举等

METHOD

方法

CONSTRUCTOR

构造函数

FIELD

成员字段

PARAMETER

方法或构造函数参数

LOCAL_VARIABLE

本地变量

 

@Retention:

这个注解用于指导一条注解应该保留多长时间,以下是@Retention的参数:

保留规则

描述

SOURCE

只保留在源文件中,编译后就无效了

CLASS

保留在.class文件中,但是虚拟机不将它载入

RUNTIME

保留在运行阶段,虚拟机会将它载入字节码

 

 

注解属性:

       一个注解相当于一个胸牌,如果你贴了一个胸牌,就知道你是哪里的学生,如果要知道你是哪里的哪个班的学生,就要添加一些属性,加了属性的标记效果为:@MyAnnotation(color=”red”);

 

定义基本类型的属性和应用属性

       在注解类中添加String color();

有一个特殊的属性value,如果在使用注解的时候,只有一个value需要赋值,那么就可以省略value=例如:@Annotation(value=” abc ”) 可以写成@Annotation(” abc ”)

 

缺省属性:

当定义一个注解属性的时候,可以再属性后面加上default,表示默认的属性值,在调用这个注解的时候,如果没有给添加了default的属性赋值,那么这个属性的值就是默认值

 

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

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

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值