广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州什么是Java注释保留策略?_北大青鸟IT计算机学校

作者:邓华发布时间:2021-03-28分类:Java技术浏览:924


导读:上一篇文章惠州北大青鸟学术部老师给大家讲解了Java注释是什么,下面跟着老师一起来学习什么是Java注释保留策略,希望对大家的学习有帮助。

上一篇文章惠州北大青鸟学术部老师给大家讲解了Java注释是什么,下面跟着老师一起来学习什么是Java注释保留策略,希望对大家的学习有帮助。

保留策略确定在什么时候丢弃注释。

Java定义了三个这样的策略:SOURCE,CLASS和RUNTIME。

SOURCE仅保留在源文件中,并在编译期间被丢弃。

CLASS在编译期间存储在.class文件中。 它在运行时不能通过JVM。

RUNTIME存储在.class文件中,并可在运行时通过JVM使用。

通过使用Java的内置注释之一为注释指定保留策略:

@Retention

其一般形式如下所示:

@Retention(retention-policy)

retention-policy必须是 SOURCE , CLASS 和 RUNTIME 之一。

默认策略为 CLASS 。

以下代码将保留策略指定为RUNTIME。

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

@Retention(RetentionPolicy.RUNTIME)
@interface MyAnno {
 String str();

 int val();
}

如何通过使用反射在运行时获取注释。

import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.reflect.Method;// An annotation type declaration.
@Retention(RetentionPolicy.RUNTIME)
@interface MyAnno {
 String str();  int val();
}public class Main {
 @MyAnno(str = "Annotation Example", val = 100)  public static void myMeth() {
   Main ob = new Main();    try {
     Class c = ob.getClass();
     Method m = c.getMethod("myMeth");
     MyAnno anno = m.getAnnotation(MyAnno.class);
     System.out.println(anno.str() + " " + anno.val());
   } catch (NoSuchMethodException exc) {
     System.out.println("Method Not Found.");
   }
 }  public static void main(String args[]) {
   myMeth();
 }
}

上面的代码生成以下结果。

Annotation Example 100

想了解更多关于Java的资讯,可以来惠州北大青鸟新方舟校区了解一下。

Java19.jpg

Java

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表