Thinking In Java 学习笔记 9.接口

接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法。
抽象方法仅有声明而没有方法体。
abstract void f();
包含抽象方法的类叫 抽象类 。如果一个类包含一个或多个抽象方法,则这个类必须是抽象类。从一个抽象类继承,必须定义所有抽象方法,或者子类也是抽象类,定义部分

接口定义时,前面加上I
interface 接口 ,接口的方法自动就是public的(虽然可以不写public),方法的实现必须写public
接口中的域自动是static和final的,即常量(大写字母标识),可以被非常量表达式初始化。

继承一个类,实现多个接口时,类需要放在前面。
通过继承来扩展接口 ,可以继承多个接口
组合接口 一个接口继承多个接口
在打算组合的不同接口中使用相同的方法名通常会造成代码可读性的混乱,应尽量避免。
适配接口 使用适配器模式,在这种方式中可以在任何现有类之上添加新的接口,这意味着让方法接受接口类型,是一种任何类都可以对该方法进行适配的方式。
适配器模式:接受你所拥有的接口,产生你所需要的接口,可以使用代理
嵌套接口 ,接口可以嵌套在类或其他接口中
接口与类(4种组合)可以嵌套,
类中的内部接口可以为private, private接口只能在类内部实现
接口中的内部接口不可以为private


工厂方法设计模式:在工厂对象上调用创建方法,而该工厂对象将生成接口的某个实现的对象。从而将代码与接口的实现分离。
任何抽象性都应该是应真正的需求而产生的,恰当地选择是优先选择类而非接口。从类开始,如果接口的必需性变得非常明确,就进行重构。

猜你喜欢

转载自blog.csdn.net/jjj1299894209/article/details/80894635