{
private int size;
public class Inner
{
private int size;
public void doStuff(int size)
{
****** //如果我引用的是doStuff中函数的参数,
******//如果我引用的Inner中的 成员变量
******//如果我引用的是Outer中的成员变量
}
}
}
请各位能帮我填写一下,三个******各应该写什么?******中表示(size++)这个意思;
[此贴子已经被作者于2006-8-13 15:58:40编辑过]
----------------解决方案--------------------------------------------------------
怎么没有人帮我看看?
----------------解决方案--------------------------------------------------------
private class Outer
{
private int size;
public class Inner
{
private int size;
public void doStuff(int size)
{
size//如果我引用的是doStuff中函数的参数,
this.size//如果我引用的Inner中的 成员变量
Outer.this.size//如果我引用的是Outer中的成员变量
}
}
}
请各位能帮我填写一下,三个******各应该写什么?******中表示(size++)这个意思;
----------------解决方案--------------------------------------------------------
楼上的好强啊,能解释一下为什么第三个(Outer.this.size)要加outer 呀?
----------------解决方案--------------------------------------------------------
。。。。。不用OUTER你想用什么啊。。。这个变量都被你覆了N(=3)次了。。。
----------------解决方案--------------------------------------------------------
Outer.this.size; 这样为什么可以, Outer的成员变量又没有声明为static, 为什么不用创建实例就可以引用size了?
----------------解决方案--------------------------------------------------------
如果不这样的话,那怎么引用外部类的size成员呢
因为内部类的size变量已经把外部类的屏掉了
----------------解决方案--------------------------------------------------------