Java.lang.Class.getField() 方法

描述

java.lang.Class.getField() 返回一个 Field 对象,该对象反映了该 Class 对象所代表的类或接口的指定公共成员字段。 name 参数是一个字符串,指定所需字段的简单名称。


声明

以下是 java.lang.Class.getField() 方法的声明。

public Field getField(String name) throws NoSuchFieldException, SecurityException

参数

name − 这是字段名称。


返回值

该方法返回由名称指定的该类的 Field 对象。


异常

  • NoSuchFieldException − 如果没有找到具有指定名称的字段。

  • NullPointerException − 如果名称为空

  • SecurityException − 如果存在安全管理员 s。


示例

下面的例子展示了 java.lang.Class.getField() 方法的使用。

package com.tutorialspoint;

import java.lang.reflect.*;

public class ClassDemo {

   public static void main(String[] args) {
 
      ClassDemo c = new ClassDemo();
      Class cls = c.getClass();

      System.out.println("Field =");

      try {
         // string field
         Field sField = cls.getField("string1");
         System.out.println("Public field found: " + sField.toString());
      } catch(NoSuchFieldException e) {
         System.out.println(e.toString());
      }
   }

   public ClassDemo() {
      // no argument constructor
   }

   public ClassDemo(String string1) {       
      this.string1 = string1;
   }
    
   public String string1 = "tutorialspoint";
} 

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

Field =
Public field found: public java.lang.String ClassDemo.string1