反射获取内部类以及调用各种类型内部类方法

2019-08-10  本文已影响0人  saofeng

import java.lang.reflect.Field;
import java.lang.reflect.Method;

public class Main {

public static void main(String[] args) {
    try {
        Class<?> clazz = Class.forName("MyLibrary$apple");
        Field field = clazz.getField("version"); //getDeclaredField 可以调用私有方法
        field.setAccessible(true);
        System.out.println("field : " + field.get(null));
    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    } catch (NoSuchFieldException e) {
        e.printStackTrace();
    } catch (IllegalAccessException e) {
        e.printStackTrace();
    }
}

}

public class MyLibrary {

static class apple{
    public static String version = "iphone6s[是手机不是吃的苹果]";
  }

}

参考https://www.cnblogs.com/garfieldcgf/p/6149285.html

https://blog.csdn.net/lwl20140904/article/details/80163880

上一篇下一篇

猜你喜欢

热点阅读