温馨提示×

java反射怎么获取静态变量

小亿
130
2024-08-05 21:41:10
栏目: 编程语言
Java开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

要通过反射获取静态变量,可以使用Field类的get()方法。下面是一个示例代码:

import java.lang.reflect.Field;

public class Main {
    public static int staticVar = 100;

    public static void main(String[] args) {
        try {
            Field field = Main.class.getDeclaredField("staticVar");
            int value = (int) field.get(null);
            System.out.println("静态变量的值为:" + value);
        } catch (NoSuchFieldException | IllegalAccessException e) {
            e.printStackTrace();
        }
    }
}

在上面的代码中,首先通过Main.class.getDeclaredField("staticVar")获取到静态变量staticVarField对象,然后通过field.get(null)方法获取静态变量的值。需要注意的是,由于静态变量属于类而不是对象,所以在调用get()方法时传入null作为参数。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:java如何获取静态变量

0