面对对象——内部类整理

来源:互联网 发布:淘宝开店需要什么要求 编辑:程序博客网 时间:2024/06/05 02:38
内部类访问特点:

1、内部类可以直接访问外部类中的成员;

2、外部类要访问内部类,必须建立内部类对象

内部类使用情况:

一般用于类的设计。分析事物时,发现该事物描述中还有事物,而且这个事物还在访问事物的内容。这时就将还有的事物定义成内部类来描述。

内部类——修饰符

直接访问外部类中的内部类中的成员,格式是:

Outer.Inner in = new Outer().new Inner();

in.show();

但是如果内部类是静态的,相当于一个外部类:

Outerine.Inner in = new Outer.Inner();

如果内部类是静态的,外部类的成员方法也是静态的

Outer.Inner.function();

如果内部类中定义了静态成员,则该内部类也必须是静态的。


内部类能访问外部类中成员的原因:因为内部类持有了外部类的引用。 外部类名.this



局部内部类:内部类可以存储在局部位置上

内部类在局部位置上只能访问局部中被final修饰的局部变量。

class Outer

{

          int num = 3;

          void method()

         {

                 class inner

        {

                 void show()

                {

                  }

         }

          }

}


匿名内部类:就是内部类的简写格式。前提是内部类必须继承或者实现一个外部类或者接口,其实就是一个匿名子类的对象(这句是指子类匿名),它的对象还是可以

有名字的(10-16)。

创建格式:new 父类or接口(){子类内容}  (详10-15)

匿名类使用场景:

当函数参数是接口类型时,而且接口的方法不超过三个,可以使用匿名内部类作为实际参数进行传递。

多态经常结合匿名内部类来考察(10-17)

0 0
原创粉丝点击