当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Java.lang.Package.isAnnotationPresent()用法及代码示例



描述

这个java.lang.Package.isAnnotationPresent(Class<? extends Annotation> annotationClass)如果此元素上存在指定类型的注释,则方法返回 true,否则返回 false。此方法主要是为了方便访问标记注释而设计的。

声明

以下是声明java.lang.Package.isAnnotationPresent()方法

public boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)

参数

annotationClassâˆ'注解类型对应的Class对象

返回值

如果此元素上存在指定注释类型的注释,则此方法返回 true,否则返回 false

异常

NullPointerExceptionâˆ' 如果给定的注解类为空

示例

下面的例子展示了 lang.Object.isAnnotationPresent() 方法的用法。

package com.tutorialspoint;

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

// declare a new annotation
@Retention(RetentionPolicy.RUNTIME)
@interface Demo {
   String str();
   int val();
}

public class PackageDemo {

   // set values for the annotation
   @Demo(str = "Demo Annotation", val = 100)
   
   // a method to call in the main
   public static void example() {
      PackageDemo ob = new PackageDemo();
      
      try {
         Class c = ob.getClass();

         // get the method example
         Method m = c.getMethod("example");

         // get the annotation for class Demo
         Demo annotation = m.getAnnotation(Demo.class);

         // print the annotation
         System.out.println(annotation.str() + " " + annotation.val());
      } catch (NoSuchMethodException exc) {
         exc.printStackTrace();
      }
   }

   public static void main(String args[]) {
      example();

      Package[] pack = Package.getPackages();
   
      // check if annotation hello exists
      for (int i = 0; i < pack.length; i++) {
         System.out.println("" + pack[i].isAnnotationPresent(Demo.class));
      }
   }
}

让我们编译并运行上面的程序,这将产生以下结果——

Demo Annotation 100
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false

相关用法


注:本文由纯净天空筛选整理自 Java.lang.Package.isAnnotationPresent() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。