天天看点

【笔记】Java编程思想—一接口与内部类

1、interface产生一个完全抽象的类,无任何实现,interface代替class

使子类能够向上转型成为多种基类,实现多重继承

2、接口:所有实现该接口的类看起来都像他

接口被用来建立类与类之间的协议

接口中的方法都是public的。

3、多继承:可继承任意多个接口,可以向上转型为多个基类

接口只能继承接口。

4、通过继承扩展接口

【笔记】Java编程思想—一接口与内部类

5、接口中放入群组常量

6、内部类

内部类与组合不同

作用:可将内部类向上转型为接口。此内部类(某个接口的实现)对外隐藏,得到的只是指向接口的引用

内部类可有private和protected权限隐藏代码。

【笔记】Java编程思想—一接口与内部类
【笔记】Java编程思想—一接口与内部类

7、匿名内部类

【笔记】Java编程思想—一接口与内部类

8、用匿名内部类在外部定义对象,参数引用应是final

【笔记】Java编程思想—一接口与内部类

9、内部类对象能访问外围类的所有成员

10、嵌套类:如果不需要内部类与外部类有联系,将内部类声明为static

因为普通内部类隐式包含引用指向外围类。

11、引用外围类对象

必须用外围类对象来创建内部类对象。不可直接在前面加上外围类名字

【笔记】Java编程思想—一接口与内部类

12、为什么要内部类?

【笔记】Java编程思想—一接口与内部类
【笔记】Java编程思想—一接口与内部类
【笔记】Java编程思想—一接口与内部类

闭包:

内部类是面向对象的闭包,他包含外围类的信息,还拥有一个指向外围类对象的引用。因为内部类有权操作外围类所有的成员。

第三版P226

继续阅读