内部类

Posted Dva清流

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了内部类相关的知识,希望对你有一定的参考价值。

实例内部类:

 

 

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

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

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

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

静态内部类:

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

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

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

 

以上是关于内部类的主要内容,如果未能解决你的问题,请参考以下文章

内部类

内部类

Java内部类详解(含:成员内部类局部内部类匿名内部类静态内部类)

一个java内部类有几个分类?

内部类之静态内部类

java内部类的匿名内部类