本帖最后由 殇_心。 于 2013-4-24 17:26 编辑
先说个小错误吧:
你把匿名内部类定义在了成员位置上。
这是显然编译失败的。
测试代码如下:
public class Test
{
String str = "aaa";
public static void main(String[] args)
{
}
void fun()
{
new Object() //匿名内部类对象:
{
String str = "aaaaaa";//这个地方和上面冲突
void print()
{
//在this前打上类名调用外部类变量
System.out.println("外部类str="+Test.this.str);
//this可以直接调用内部类变量
System.out.println("内部类str="+this.str);
}
};
}
} |