21xrx.com
2024-11-05 18:37:47 Tuesday
登录
文章检索 我的文章 写文章
Java @注解(Annotation)的使用及实现案例
2023-06-16 19:33:45 深夜i     --     --
Java注解 自定义注解 元数据信息

Java中的注解(Annotation)是一个非常强大的特性,它可以提供关键的元数据信息给编译器、虚拟机以及其他工具去执行一些操作。通过注解,我们可以让编写的代码更加简洁,易于维护,还能提高代码的可读性。在本文中,我们将介绍Java注解的基本使用方法及其具体实现案例。

一、Java注解的使用

Java中提供了4种基本类型的注解:

(1)@Override注解

使用 @Override 注解可以检查编写的方法是否正确的覆盖了父类的方法。如果该方法是 override 一个方法但此时方法的签名发生了改变,则会在编译期或是运行时抛出错误。

(2)@Deprecated注解

使用 @Deprecated注解标注过时的方法或者字段,通常是间接表示该方法或者字段已经废弃或者不建议使用。

(3)@SuppressWarnings注解

使用 @SuppressWarnings 注解可以忽略编译器或 IDE 对于警告的提示信息,例如你设置了一个不适用泛型类操作泛型时,编译器会提示警告,而设置了 @SuppressWarnings 后,编译器就会自动忽略此警告信息。

(4)@Target注解

@Target注解表示自定义的注解可以作用或者使用的范围:


@Target(ElementType.METHOD)

public @interface CustomAnnotation

二、Java注解的实现案例

下面这个例子演示了如何自定义一个注解,通过注解实现对用户操作权限的控制。


import java.lang.annotation.ElementType;

import java.lang.annotation.Retention;

import java.lang.annotation.RetentionPolicy;

import java.lang.annotation.Target;

/**

* 自定义注解

*/

@Target(value = ElementType.METHOD)

@Retention(RetentionPolicy.RUNTIME)

public @interface Authority {

  String[] value();

}

import java.lang.reflect.Method;

/**

* 测试类

*/

public class Test {

  @Authority(value = {"dajun"})

  public static void method1() {

    System.out.println("这是method1方法");

  }

  @Authority(value = {"summer"})

  public static void method2() {

    System.out.println("这是method2方法");

  }

  public static void main(String[] args) {

    try {

      Method method = Test.class.getMethod("method1");

      if(method.isAnnotationPresent(Authority.class)) {

        Authority authority = method.getAnnotation(Authority.class);

        String[] role = authority.value();

        for (String r : role) {

          if(r.equals("summer")) {

            System.out.println("summer可以调用:" + method.getName());

          } else {

            System.out.println("不允许调用:" + method.getName());

          }

        }

      }

    } catch (NoSuchMethodException e) {

      e.printStackTrace();

    } catch (SecurityException e) {

      e.printStackTrace();

    }

  }

}

通过上面这个例子,我们可以很好的理解与掌握Java注解的使用方法。

总结:

在Java的核心类库中,注解使用非常广泛,而实现自己的注解也不是很难,希望大家在今后的编码过程中能够熟练运用该特性。本文中我们了解了注解的基本知识,通过代码案例实践了自定义注解,并且介绍了如何让注解生效的方法。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复