Java中的注解(Annotation)

1、JDK内置注解

注解都是定义在java.lang.Override下的

  1. @Override:重写一个方法的注解

  2. @Deprecated:表示不建议使用

  3. @SuppressWarnings:镇压警告,需要传参

  4. 等等

2、自定义注解

@interface MyAnnotation{
}

3、元注解:元注解就是用来描述注解的注解

import java.lang.annotation.*;

@MyAnnotation
public class TestAnnotation {
    
}

//定义一个注解
@Target(value = {ElementType.METHOD,ElementType.TYPE})  //表示注解可以用在那些地方
@Retention(value = RetentionPolicy.RUNTIME)             //表示注解在哪些地方有效
@Documented                                             //表示是否将我们的注解生成在Javadoc中
@Inherited                                              //子类可以继承父类的注解
@interface MyAnnotation{
}

4、自定义注解加上元注解

import java.lang.annotation.*;

//自定义注解
public class TestAnnotation{

    //注解可以显式赋值,如果没有默认值则必须赋值
    @MyAnnotation(name = "Hu",schools = {"新东方","蓝翔"})
    public TestAnnotation(){}

}

//可以标注在类、方法、构造器上
@Target({ElementType.TYPE,ElementType.METHOD,ElementType.CONSTRUCTOR})
@Retention(RetentionPolicy.RUNTIME)
@interface MyAnnotation{
    String name() default "张三"; //注解的参数定义:参数类型  +  参数名();
    int age() default 3;
    int id() default -1;        //如果默认值为-1,代表不存在
    
    String[] schools();
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只嘻嘻嘻

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值