4个回答
展开全部
你只创建了对象却没有调用方法啊,修改如下
public void test(){
new Hello(){
public void helloFun(){
var = 2;
}
}.helloFun();
}
其实这段代码体现不出来内部类对外部类field的调用。所以简单说下:
匿名类和内部类中的中的this :
有时候,我们会用到一些内部类和匿名类。当在匿名类中用this时,这个this则指的是匿名类或内部类本身。这时如果我们要使用外部类的方法和变量的话,则应该加上外部类的类名
展开全部
实在不行,你就写一个setVar方法,然后在匿名内部类中调用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-09-04 · 知道合伙人软件行家
关注
展开全部
Test t=new Test();
t.xx=
t.xx=
追问
主要是想在匿名内部类中修改。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
改成final int var = 0;
追问
定义了final的成员变量,哪还能被重新赋值啊。
追答
那就定义成静态变量呗
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |