①成员内部类
顾名思义,在类中定义一个类,这个类就是成员内部类,我们都知道在类中可以定义成员变量,成员方法,当然也就可以定义成员内部类咯。成员内部类可以访问外部类的所有成员方法成员变量,外部类同样。
②局部内部类局部内部类也是名字就很直白,也比较好理解,就是在类的成员方法中定义一个类,局部变量类可以访问外部类的成员变量和成员方法,外部类就不行了。在外部类的方法中定义局部内部类对象,以此来访问局部内部类的成员变量和方法。
③静态内部类就是static修饰的类呗,和成员内部类一样的地方是它也是在类中定义的,不同是它的功能好像又少了点,静态内部类只能访问到外部类的静态成员。
④匿名内部类(其实这个我不太熟悉)匿名内部类和接口挂钩,它也只能在接口中使用,匿名内部类其实就是没有名字的内部类,它的出现是为了使程序更加简便。我们不再创建接口的实现类,而是直接用匿名内部类。