本帖最后由 bowen-xiao 于 2015-1-18 11:17 编辑
static final属于常量这个没有问题,下面调用用所有的成员变量的方法。
- public static void main(String[] args)throws Exception {
- // Class<Demo1> Demo1 = com.itheima.Demo1.class;
- Demo1 Demo1 = (Demo1)Class.forName("com.itheima.Demo1").newInstance();
- Field[] fields = Demo1.getClass().getFields();
- for (Field field : fields) {
-
-
- // 获取成员变量的类型是否为public staic fianl
- // 参考http://www.2cto.com/kf/201211/165674.html
- if(field.getModifiers() == 25){
-
- System.out.print("名称:" + field.getName() +"="+ field.get(Demo1) +"\t");
- }
- }
- }
复制代码
方法二:直接指定成员变量名,直接调取
- public static void main(String[] args)throws Exception {
- //根据变量名称直接获取到指定的成员变量
- Class<Demo1> Demo2 = com.itheima.Demo1.class;
- Field field2 = Demo2.getDeclaredField("staticFinal");
- System.out.println(field2.get(Demo2));
- }
复制代码
|