Erfassungsmethode: 1. Erstellen Sie eine Person-Klasse und erhalten Sie das Klassenobjekt der Klasse durch Reflektion. 2. Verwenden Sie die getDeclaredFields-Methode, um alle Felder der Klasse abzurufen. 3. Setzen Sie die Felder durch Durchlaufen des Feldarrays auf den Zugriffsstatus , und verwenden Sie dann die get-Methode, um den Wert des Felds abzurufen und den Feldnamen und -wert auszugeben.
Das Betriebssystem dieses Tutorials: Windows 10-System, Dell G3-Computer.
In Java ist Reflektion ein Mechanismus, mit dem Sie zur Laufzeit Klasseninformationen abrufen, Klassenmethoden aufrufen und Klasseneigenschaften bearbeiten können. Mithilfe der Reflexion können Sie die Eigenschaften und Werte eines Objekts ermitteln. Das Folgende ist ein einfaches Beispiel, das zeigt, wie mithilfe der Java-Reflektion die Eigenschaften und Werte eines Objekts abgerufen werden:
import java.lang.reflect.Field; public class ReflectExample { public static void main(String[] args) throws IllegalAccessException { // 创建一个示例对象 Person person = new Person("John", 25, "123 Main St"); // 获取Class对象 Class<?> clazz = person.getClass(); // 获取类的所有字段(包括私有字段) Field[] fields = clazz.getDeclaredFields(); // 遍历字段数组 for (Field field : fields) { // 设置字段为可访问,即使是私有字段也可以访问 field.setAccessible(true); // 获取字段的名称 String fieldName = field.getName(); // 获取字段的值 Object fieldValue = field.get(person); // 打印字段名和值 System.out.println(fieldName + ": " + fieldValue); } } } // 示例类 class Person { private String name; private int age; private String address; public Person(String name, int age, String address) { this.name = name; this.age = age; this.address = address; } }
Im obigen Beispiel haben wir zuerst eine Person-Klasse erstellt und dann das Klassenobjekt der Klasse durch Reflektion erhalten . Verwenden Sie als Nächstes die Methode getDeclaredFields, um alle Felder der Klasse abzurufen. Durch Durchlaufen des Feldarrays stellen wir das Feld so ein, dass auf es zugegriffen werden kann, verwenden dann die get-Methode, um den Wert des Felds abzurufen, und geben den Feldnamen und -wert aus.
Es ist zu beachten, dass der Zugriff auf die privaten Felder über Reflektion erfolgt. Daher müssen Sie bei der Verwendung von Reflektion auf die Zugriffsberechtigungen für die Felder achten. Im Produktionscode sollte Reflektion mit Vorsicht verwendet werden, da sie die Kapselung unterbrechen und das Verständnis und die Wartung des Codes erschweren kann.
Das obige ist der detaillierte Inhalt vonSo erhalten Sie Objekteigenschaften und -werte mithilfe von Java Reflection. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!