JAVA中的注解

注解(annotation),也叫元数据,它是jdk1.5版本及以后版本中引进来,它可以对类(type)、字段(field)、方法(method)、参数(parameter)、构造器(constructor)、局部变量(local_variable)进行说明,告诉编译器如何去运行程序。

常用的注解有:@Deprecated,标记方法以及过时        @Override,重写父类的方法      @SuppressWarnings(value={"unused","unchecked"}), 抑制编译器的警告。

注解的作用:1.告诉编译器如何运行程序     2.简化(或者说取代)配置文件xml

常见的注解使用:

public class AnnotationApp {
	@Override
	public String toString(){
		return super.toString();
	}
	@SuppressWarnings({"unused","rawtypes"})
	public void save(){
		List list=null;
	}
	@Deprecated
	public void save2(){
		
	}

}


有时候官方的注解并不能满足我们,我们需要自己去定义自己需要的注解

自定义注解的基本写法

public @interface Author {
       //自定义一个作者的注解
	/** 
	 * 注解属性
	 *  1. 修饰为默认或public
	 *    2. 不能有主体
	 */
        String name();
	int age();
}
使用
@Author(name = "Jet", age = 30)
	public void save() {

	}

带默认值的注解写法:

 带默认值的注解,使用的时候就可以不写此属性值(如果注解属性名称为value时,这是默认的 ,使用的时候可以省略名称直接给值(这是注解仅有一个属性的情况下才可以省略))

public @interface Author {
	int age() default 30;  
}

注解属性为数组的时候

public @interface Author {
	String[] value() default {"test1","test2"};
}
使用:
@Author({“xxx”,“xxxx”})
	public void save() {
	}

元注解:修饰注解的注解

指定注解的可用范围:

@Target{TYPE, FIELD, METHOD, PARMETER, CONSTRUCTOR,  LOCAL_VARIABLE}分别对应着,类、字段、方法、参数、构造器、局部变量

指定注解的周期:

@Retention(RetentionPolicy.SOURCE)   在源码的时候有效

@Retention(RetentionPolicy.CLASS)   在字节码的时候有效

@Retention(RetentionPolicy.RUNTIME)   在运行的时候有效


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值