可以的,你可以研究一下下面这段代码,用的反射,不要问我为什么,解释起来很繁琐。- package com.itheima.demo;
- /**
- * @author RuiWu
- */
- import java.lang.reflect.Constructor;
- import java.lang.reflect.Field;
- class W
- {
- public void test()
- {
- class N//定义在局部的内部类。
- {
- final int x=1;//需要访问的常量。
- void show()
- {
- System.out.println("X="+x);
- }
- }
- new N().show();
- }
-
- public static void main(String[] args) throws Exception {
- Class<?> clazz = Class.forName("com.itheima.demo.W$1N");
- Constructor con = clazz.getDeclaredConstructor(W.class);
- Object obj = con.newInstance(new W());
-
-
- Field f = clazz.getDeclaredField("x");
- System.out.println(f.get(obj));
- }
- }
复制代码 |