面向对象 -- 内部类

前言——任何一个类都不在另一个类的内部,而在类中定义的那个类称为内部类。

一、内部类包括:成员内部类、局部内部类、匿名内部类、静态内部类、内部类的继承。

1.成员内部类:

概念:① 内部类可以随便使用外部类的成员方法、成员变量 ,无论是否被修饰为private

② 内部类的实例一定要绑定在外部类的实例上。

③内部类的成员,只有在内部类 的范围可知,不能被外部类使用。

2.局部内部类:

内部了不仅可以在类中进行,也可以在类的局部位置定义:如在类的方法,或者任意的作用域中。

用this调用关键字获取内部类与外部类的引用。

3.匿名内部类:

语法实现:return new A ( ) { .../内部类体};分号代表创建方法引用表达式的标识。

匿名内部类没有名称,一般在方法体中出现。

4.静态内部类:

内部类前加上static ,一个静态内部类中可以声明static成员,但是在非静态内部类中不可以声明静态成员。不可以使用外部类的非静态成员。

5.内部类的继承:

public class OutClass extends ClassA,ClassB{

public OutClass ( ClassA a ){   a.super( );}}

class ClassA {

class ClassB { }}

你可能感兴趣的:(面向对象 -- 内部类)