首页 > 代码库 > 内部类

内部类

实例内部类:

技术分享

技术分享技术分享

 

技术分享

 

在创建内部类对象通过外部类对象来创建内部类对象。 先将外部类new出来。 然后再new出来内部类。  接受时也要用外部类.内部类来接受创建出的内部类数据。

2.内部类自动持有外部类实例的引用。   内部类中自动拥有 外部类.this:外部类地址值。

3.外部类无法访问内部类成员。  如果要调用需要先创建内部类的实例。 new内部类.成员变量   在外部类中就不需要  Outter.new Inner().age  、 在类中有个this.

=================================================================================================

静态内部类:

技术分享

静态内部类的创建: outter.Inner in = new Outter.Inner()  

静态内部类不会自动持有外部类实例的引用,也不需要先创建外部类的实例再去调用。因为它是Static的  只要用类名调用就可以了。

如果static的内部类访问外部类中的static变量,可以直接访问。 如果访问外部类的非static变量。需要先把外部类对象new出来。因为static先于对象创建。

 

内部类