@Override,@Deprecated,@SuppressWarnings三种注解,定义注解,元注解

一、三种注解

     1.@Override:限定重写父类的方法,该注解只能用于方法
     2.@Deprecated:用于便是某个程序元素(类,方法等)已过时
     3.@SuppressWarnings:抑制编译器警告

    @SuppressWarnings("rawtypes")  //提示未加泛型
	List list = new ArrayList();    

    @Override
	public String toString() {
		return "Person [name=" + name + ", age=" + age + "]";
	}
	@Deprecated
	public void show() {
		System.out.println("这个方法可能已经过时,尽量少使用哦!");
	}


 二、如何自定义一个注解

可参照@SuppressWarnings进行创建:

@Target({TYPE, FIELD, METHOD, PARAMETER, CONSTRUCTOR, LOCAL_VARIABLE})
@Retention(RetentionPolicy.SOURCE)
public @interface MyAnnotion {
	
	//在SuppressWarnings中定义了一个数组,但是在此仅仅是定义了一个;
	String value() default "Hello";
}


 三、元注解

元注解问题:
 ①target:用于修饰Annotion定义,用于指定被修饰的Annotion能用于用于修饰那些程序元素,@Target也包含一个名为value的成                员变量
 ②Retention:只能用于修饰一个Annotion定义,用于指定该Annotion可以保留多长时间, @Rentention,@Rention包含一个                             RetentionPolicy类型的成员变量,使用@Retention时必须为该value成员变量指定值。
           1)RetentionPolicy.SOURE:编译器直接丢弃这种策略的注释---------编译时不考虑
           2)RetentionPplicy.CLASS:编译器将把注释记录到CLASS文件中,当运行java程序时,JVM不会保留注解。这是默                                                                  认值---------编译保存考虑,运行不考虑
            3)RetionPolicy.RUNTIME:编译器将把注释记录在class文件中,当运行java程序时,JVM会保留注释,程序就可以通                                                               过反射获取改注释------编译保留考 虑,运行考虑

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值