java.lang.reflect.Field.getGenericType()方法示例



說明

java.lang.reflect.Field.getGenericType()方法返回一個 Type 物件,該物件表示由此 Field 物件表示的欄位的宣告型別。

宣告

以下是 java.lang.reflect.Field.getGenericType() 方法的宣告。

public Type getGenericType()

返回

一個 Type 物件,表示由此 Field 物件表示的欄位的宣告型別。

異常

  • GenericSignatureFormatError - 如果泛型欄位簽名不符合 Java 虛擬機器規範中指定的形式。

  • TypeNotPresentException - 如果指定的物件不是宣告底層欄位的類的例項(或其子類或實現類)。

  • MalformedParameterizedTypeException - 如果底層欄位的泛型簽名引用了一個引數化型別,由於某些原因,該型別無法例項化。

示例

以下示例顯示了 java.lang.reflect.Field.getGenericType() 方法的用法。

package com.tutorialspoint;

import java.lang.reflect.Field;

public class FieldDemo {

   public static void main(String[] args) throws NoSuchFieldException, 
      SecurityException, IllegalArgumentException, IllegalAccessException {
          
      SampleClass sampleObject = new SampleClass();
            
      Field field = SampleClass.class.getField("sampleField");
      System.out.println(field.getGenericType());
   }
}

class SampleClass {
   public static float sampleField = 5.0f;
}

讓我們編譯並執行以上程式,這將產生以下結果 -

float
java_reflect_field.htm
廣告
© . All rights reserved.