谁是匿名类实现中的“this”?

问题描述

我无法弄清楚在匿名类方法中this 引用的对象是什么。 两个例子:

  1. 如果我为 onClick 实现匿名实现,例如:
View.setOnClickListener(new View.onClick() {
    public void onClick(View v) {
        ...
        this.   //to which object this refers?
   }
}

2.假设我有以下界面:

interface  WebResponseHandler {
    public void onWebResponseFinished(String jsonString)
}

在某个类中,我定义了一个实现上述接口的变量:

private onInitWebResponseHandler = new VolleyHandler.WebResponseHandler() {
    public void onWebResponseFinished(String jsonString) {
            .....
            this    // to which object this refers to?
    }
}

惊讶,在第二个例子中,this 指的是 私有的 onInitWebResponseHandleronInitWebResponseHandler 的一部分而不是直接引用

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)