重拾Java回忆录(十一):Java11内部类的使用


什么是内部类:定义在另外一个类中的类,称为内部类

编译完成后产生2个类 Outter.class 和 Outter$Inner.class

内部类的分类

静态内部类:定义在类中使用static描述

静态内部类中只能访问外部类的静态成员

实质:在一个类中定义了一个静态类型,该类型产生的对象可以操作包含类中的静态属性

成员内部类: 作为外部类的一个成员出现,与外部类的属性和方法并列

重拾Java回忆录(十一):Java11内部类的使用_第1张图片



局部内部类:在外部类的方法中定义的类,类似与局部参数

重拾Java回忆录(十一):Java11内部类的使用_第2张图片



匿名内部类:特殊的内部类

--没名字,没定义class extends implements

--以一种隐含的方式实现一个接口或者继承一个类 ,并且只能创建一次实例

--唯一的没有构造方法的类

重拾Java回忆录(十一):Java11内部类的使用_第3张图片

小结:什么使用内部类

1.当设计一个类A的功能时,发现该类A完全的为某一个类B服务,将该类A设计称为B的内部类

2.当编写代码时,为了对某些操作保密(算法,数据类型),可以通过内部类进行封装


你可能感兴趣的:(内部类,Java学习)