《java编程思想》第十章回顾

一、内部类:将一个类的定义放在另一个类的定义的内部。它允许把一些逻辑相关的类组织在一起。外部类一般会有一个指向内部类的引用。

二、内部类拥有其外部类所有元素的访问权,不需要任何额外条件。Why?外部类创建内部类的对象时,此内部类的对象一定自动生成一个引用。

三、除非创建嵌套类(静态内部类),否则在拥有外部对象之前是不可能创建内部类对象的。

四、内部类向上转型为基类,这种基类常常为接口,可以很好的隐藏细节。

五、匿名内部类:将返回值的生成和返回值的定义结合在一起,且没有名字。(形式上看,是return后面加了一个类,PS:这个类用new返回。)

六、匿名内部类使用来自于外部定义的对象时,其参数一定是final的。

七、不需要内部类和外部类有关系时,可以将内部类声明为static,即为嵌套类。

八、为什么需要内部类?每个内部类都可以独立地继承一个来自于(接口的)实现,且与外部类独立。

九、java通过内部类实现回调。

十、内部类似乎不可以覆盖。

猜你喜欢

转载自blog.csdn.net/leokingszx/article/details/86599064