问答详情
源自:7-6 Java 中的成员内部类

请问这里的内部类中访问外部类的name时,为什么要用到this啊,这里的this是什么含义呢

public class Inner {

String name = "爱慕课";

        //内部类中的方法

public void show() { 

System.out.println("外部类中的name:" +  HelloWorld.this.name );

System.out.println("内部类中的name:" + name );

System.out.println("外部类中的age:" + age);

}


提问者:qq_伊藤_03776080 2017-07-18 18:45

个回答

  • 奕吉啊
    2017-07-18 19:14:16
    已采纳

    //内部类可以理解为外部类的一个成员
    //如果外部类和内部类具有相同的成员变量或方法,内部类默认访问自己的成员变量或方法,
    //如果要访问外部类的成员变量,可以使用 this 关键字。
    
    //原理:当需要在内部类的内部访问外部类实例时,可以将代表外部类的实例的this关键字作为一个参数传递给内部类,
    //这样就可以实现在内部类的内部访问外部类实例,其实质还是在内部类中用外部类的实例去访问自身的方法而已。