基础加强篇之-----注解的应用

本文介绍了注解的基本概念及其在ASP.Net、Android、iOS开发中的入门应用,包括如何标记过时的方法、使用注解避免编译警告及自定义注解的实现与使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

关于注解,有一些普通的应用,就像是想使用过时的代码而不想让虚拟机提示,想废弃一个方法又不能直接删掉,可以加个注解,别人调用它时,会提示是过时代码,但是还是能够正常使用的,亦或是,在覆盖父类方法时,加个注解。等等,但是注解还是有更高级的应用的,下面只能初步的介绍下注解的入门应用以及比较高级一点的应用方式了。

(1)过时的方法

/**
	 *  假如下面这个方法在我要升级类的时候不打算用了,但是又不能删,因此
	 *  我加一个注解,在别人要调用它的时候就会显示这个方法过时了
	 * */
	@Deprecated
	public static void sayHello(){
		System.out.println("hi, 传智播客");
	}

(2)调用到了过时的方法

        @SuppressWarnings("deprecation")//这就是个注解,意思是压缩警告
	/**
	 *  作用体现在下面那个划线的代码处,这个是个过时的方法,所以在编译时
	 *  会出现提示而为了不让虚拟机提示,就加这个注解
	 * */
	@ItcastAnnotation("xyz")//填写value属性,red属性有缺省值
	public static void main(String[] args) {
		System.runFinalizersOnExit(true);
        }

(3)自己定义一个注解,并使用

下面是一个注解的使用方法的结构图


首先是定义一个注解

import java.lang.annotation.*;

import cn.itcast.day1.EnumTest;

@Retention(RetentionPolicy.RUNTIME)
//上面这个注解的意思是把下面这个注解的生命周期维持到运行阶段
public @interface ItcastAnnotation {
    String color() default "blue";//为color设置缺省属性
    String value(); //设置一个value属性
    int[] arrayAttr() default {3, 4, 4};
}

然后我在一个类中使用这个注解,注意,注解也是有属性的

@ItcastAnnotation(color="red", value="abc", arrayAttr={1,2,3})//因为这个注解有属性,所以要设定属性值

public class AnnotationTest {

	@ItcastAnnotation("xyz")//填写value属性,red属性有缺省值
	public static void main(String[] args) {
		//查看我自己加的那个注解是否存在
		if(AnnotationTest.class.isAnnotationPresent(ItcastAnnotation.class)){
			ItcastAnnotation annotation = AnnotationTest.class.getAnnotation(ItcastAnnotation.class);//将这个注解实例化
			//打印属性值
			System.out.println(annotation.color());
			System.out.println(annotation.value());
			System.out.println(annotation.arrayAttr().length);//打印数组的长度
		}
		
	}
}



---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值