Java成员变量跑哪里去了?

无意中敲出的代码,竟然编译通过了,这在低版本的jdk下肯定是不允许的,下列代码中,主函数是正常运行的,str存到哪里去了?

正解:Filed数组第一个,可以用Java反射知识进行处理

package cn.seaboot.common.db;

public class Test {
    interface A{
        void pr();
    }

    public static A createA(String str){
        return new A() {
            @Override
            public void pr() {
                System.out.println(str);
            }
        };
    }

    public static void main(String[] args) throws IllegalAccessException {
        A a = createA("xiaoming");
        a.pr();
        a.pr();
        //TODO:如何获取str的值,str存在了哪里?
    }
}

猜你喜欢

转载自www.cnblogs.com/chenss15060100790/p/11830787.html
今日推荐