每日一更(但是存货快用完了,尴尬,后续想更新docker和kubernetes等有关微服务的知识),下面是具体内容。
- 包含抽象方法的类叫做抽象类(一个或多个抽象方法)
- 继承自抽象类的子类,如果没实现所有抽象方法,那么该类也是抽象类,必须用abstract关键字来限定
- 创建一个没有任何抽象方法的抽象类:阻止产生这个类的任何对象
- 接口被用来建立类与类之间的协议
- 接口中的域:隐式地是static和final的;接口中的方法,隐式地是public的
- 继承过程中,方法的可访问权限不能缩小,因为需要能够向上转型
- 无法通过new的方式来创建抽象类和接口的对象,但是可以将其实现类向上转型为抽象类和接口,就跟普通的基类是一样的
- 创建一个能够根据所传递的参数对象的不同而具有不同行为的方法,被称为策略设计模式。这类方法包含所要执行的算法中固定不变的部分,而“策略”包含变化的部分。策略就是传递进去的参数对象,它包含要执行的代码
- 适配器模式:适配器中的代码接受你所拥有的接口,并产生所需要的接口
- Java中的多重继承是通过接口实现的。将所有接口都置于implements关键字之后,并用逗号分隔。可以继承任意多个接口,并可以向上转型为每个接口,因为每个接口都是一个独立的类型
- 具体类必须放到前面,后面再跟实现的接口
- 使用接口的两个原因:
- 可以向上转型为多个基类型,以及由此带来的灵活性
- 防止客户端程序猿创建该类的对象
- 因为接口中的域自动是static和final的,所以以前的代码中接口是一种很便捷的用来创建常量组的工具
- 在一个类里面,只有和文件名同名的类才可以用public修饰。但是非public类里面嵌套的类或接口,也可以使用public关键字,因为这时候它们相当于域,当然可以被权限控制词所修饰
- 当实现一个接口时,并不需要实现嵌套在其内部的任何接口
- 生成遵循某个接口的对象的典型方式就是工厂方法设计模式。这与直接调用构造器不同,我们在工厂对象上调用的是创建方法,而该工厂对象将生成接口的某个实现的对象
- 对于创建类,几乎在任何时刻,都可以替代为创建一个接口和一个工厂
以上就是第九章的相关笔记内容,如有错误,烦请指出,谢谢啦!