第九章 接口


接口和抽象类为我们提供了一种将接口与实现分离的更加结构化的方法。
抽象类,是普通类与接口之间的一种中庸之道
1.抽象类和抽象方法
抽象方法:仅有声明而没有方法体
抽象类:包含抽象方法的类
如果从一个抽象类继承,并想创建该新类的对象,那么就必须为基类中的所有抽象方法提供方法定义。如果不这样做,那么导出类便也是抽象类,且编译将会强制我们用abstract关键字来限制这个类。
2.接口
interface关键字产生一个完全抽象的类,它根本就没有提供任何具体实现。
3.完全解耦
只要一个方法操作的是类而非接口,那么你就只能使用这个类及其子类。将接口从具体实现中解耦使得接口可以应用于多种不同的具体实现,因此代码页就更具可复用性
4.java中的多重继承
如果要从一个非接口的类继承,那么只能从一个类去继承。其余的基元素都必须是接口。需要将所有的接口名都置于implements关键字之后,用逗号将它们一一隔开。如果要从一个接口继承,可以继承多个接口,用逗号隔开
5.通过继承来扩展接口
通过继承,可以很容易地在接口中添加新的方法声明,还可以通过继承在新接口中组合数个接口
5.1.组合接口是的名字冲突
在接口实现多重继承时,如果有相同的方法,是没有问题的,但是如果参数列表或返回类型不同,会报错。在打算组合的不同接口中使用相同的方法名通常会造成代码的可读性的混乱,请尽量避免这种情况
6.适配接口
接口最吸引人的原因之一就是允许同一个接口具有多个不同的具体实现。一个接受接口的方法,而该方法传递的对象则取决于方法的使用者。
7.接口中的域
接口中的任何域都自动是static和final的
7.1初始化接口中的域
在接口中定义的域不能是“空final”,但是可以被非常量表达式初始化。
8.嵌套接口
接口可以嵌套在类中或其他接口中。
在类中嵌套的接口,就像非嵌套接口一样,可以拥有public和“包访问”两种可视性
9.接口与工厂
接口是实现多重继承的途径,而生成遵循某个接口的对象的典型方式就是工厂方法设计模式。

第九章 接口

上一篇:hive学习笔记之-数据类型


下一篇:基于FPGA的数据采集系统