class OuterInnerDemo
{
public static void main(String[] args)
{
new Outer().method();
}
}
class Outer
{
String str="qqq";
class Inner
{
String str="ooo";
public void show()
{
System.out.println(str);/*内部类会先访问内部类中的变量str="ooo",
若将内部内中的str注释掉,则会访问外部类中的变量str,str前面省略了 外部类名.this
*/
System.out.println(this.str);//this代表内部类对象,所以只能访问内部类中的变量str,打印内部类变量。
System.out.println(Outer.this.str);//Outer.this代表外部类对象,所以只能访问外部类中的变量str,打印外部类变量。
}
}
public void method()
{
Inner in=new Inner();
in.show();
}
}
不知道这是不是楼主想要的,这是我个人对内部类外部内的一些看法。 |