A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 沉湎码海 中级黑马   /  2017-2-10 21:43  /  552 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

外部类不能直接访问内部类的成员。

在外部类里使用内部类

外部类里包含一个方法,该方法里创建一个内部类对象。
通过该内部类对象来访问内部类的成员。




非静态内部类为什么可以直接访问外部类的私有属性????





Outer.this.




如果外部类属性、内部类属性与内部类里方法的局部变量同名,
则可通过使用this、外部类类名.this作为限定来区分。




总之一句话:
       
       
        在内部类的对象里,有一个变量,变量名为:外部类类名.this 这个变量存储着外部类对象的引用(即:外部类对象的地址)
       
       
       
       
        2.内部类的成员只在非静态内部类范围内是可知的,并不能被外部类直接使用。
       
       
        3.如果外部类需要访问非静态内部类成员,则必须显示创建非静态内部类对象来调用访问其实例成员。
       
       
        4.

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马