描述
這個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 Java.lang.Package.isSealed()用法及代碼示例
- Java Java.lang.Package.isCompatibleWith()用法及代碼示例
- Java Java.lang.Package.toString()用法及代碼示例
- Java Java.lang.Package.getSpecificationTitle()用法及代碼示例
- Java Java.lang.Package.getAnnotations()用法及代碼示例
- Java Java.lang.Package.getAnnotation()用法及代碼示例
- Java Java.lang.Package.getPackage()用法及代碼示例
- Java Java.lang.Package.hashCode()用法及代碼示例
- Java Java.lang.Package.getName()用法及代碼示例
- Java Java.lang.Package.getPackages()用法及代碼示例
- Java Java.lang.Process.getInputStream()用法及代碼示例
- Java Java.lang.Process.getErrorStream()用法及代碼示例
- Java Java.lang.Process.destroy()用法及代碼示例
- Java Java.lang.ProcessBuilder.redirectErrorStream()用法及代碼示例
- Java Java.lang.ProcessBuilder.directory()用法及代碼示例
- Java Java.lang.ProcessBuilder.environment()用法及代碼示例
- Java Java.lang.Process.exitValue()用法及代碼示例
- Java Java.lang.Process.waitFor()用法及代碼示例
- Java Java.lang.ProcessBuilder.redirectErrorStrestart()用法及代碼示例
- Java Java.lang.Process.getOutputStream()用法及代碼示例
注:本文由純淨天空篩選整理自 Java.lang.Package.isAnnotationPresent() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。