Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

java 反射获取属性名和值

作者:只影天涯   发布日期:2025-12-04   浏览:40

import java.lang.reflect.Field;

public class ReflectionExample {
    public static void main(String[] args) {
        try {
            // 创建一个示例对象
            Person person = new Person("John", 30);

            // 获取类的 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("Field Name: " + fieldName + ", Value: " + fieldValue);
            }
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }
    }
}

class Person {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }
}

解释说明:

  1. 创建示例对象:我们首先创建了一个 Person 类的实例,该类有两个私有属性 nameage
  2. 获取 Class 对象:通过 person.getClass() 获取 Person 类的 Class 对象。
  3. 获取所有声明的字段:使用 clazz.getDeclaredFields() 获取 Person 类中声明的所有字段(包括私有字段)。
  4. 遍历字段:通过 for 循环遍历每个字段,并使用 field.setAccessible(true) 设置私有字段为可访问。
  5. 获取字段名和值:使用 field.getName() 获取字段名,使用 field.get(person) 获取字段值。
  6. 打印结果:最后将字段名和值打印出来。

这段代码展示了如何使用 Java 反射机制获取对象的属性名和对应的值。

上一篇:java string转char

下一篇:java基本类型有哪八种

大家都在看

java判断是windows还是linux

java连接数据库的代码

java djl

ubuntu 卸载java

es java api

java读取excel中的图片

java新建

java sort用法

java collections.sort

java file类的方法

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站