Annotation功能

概述
Annotation就是注解用来说明程序,时给计算机看的。(注释的话就是给程序Y看的)。
可以声明在包、类、方法、局部变量、方法参数等的前面,用来对这些元素进行说明注释。
作用

  • 编写文档:通过代码里标识的元数据生成文档(生成doc文档)==(这个太有趣了,所以我就尝试了一波)

步骤按 /** 再按一下回车,就可以写注释,然后再cmd里面 用javadoc creatdoc.java,然后打开生成的index.htlm文件,就可以看到生成的doc文档了,代码如下

/**
 * 注解javadoc演示
 * @author Zhang
 *@since 1.5
 *
 */
public class creatdoc {
	/**
	 * 计算两数的和
	 * @param a
	 * @param b
	 * @return 两数的和
	 */
	public int add(int a,int b) {
		return a+b;
	}
	
}

具体因为一些细节原因没用太成功(我透辽)
在这里插入图片描述

  • 代码分析
  • 编译检查
    基本内置注解
@Override 它的作用是对覆盖超类中方法的方法进行标记,如果被标记的方法并没有实际覆盖超类中的方法,则编译器会发出错误警告。

@Deprecated 用该注解标注内容,表示已经过时
@SuppressWarnings 用来压制警告 @SuppressWarnings("all")传递参数all表示压制所有的警告

自定义Annotation类型

在定义Annotation类型时,@Retention设置为RetentionPolicy.RUNTIME,那么在程序运行时通过反射就可以获取到相关的Annotation信息,如获取构造方法、字段、方法的Annotation信息。

public @interface NoMemberAnnotation{
//属性列表
}

要求
1.属性的返回值(只能)有下列取值
基本数据类型、String、枚举、注解、以上类型的数组
2.再定义属性的时候可以用default关键字给属性默认值初始化

public @interface NoMemberAnnotation{
	String value() default"默认值"}

3.如果只有一个属性一般名称定义为value,且value可以省略
元注解

  • @Targe 描述注解的注解(如果没用Targe表示适用于所有程序)
    ElementType中的枚举常量
    在这里插入图片描述
  • @Retention 描述注解被保留的阶段
    在这里插入图片描述
    例如
@Retention(RetentionPolicy.RUNTIME);
  • @Inherited 描述注解知否被子类继承
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值