面向对象设计原则(Java)概要.pptVIP

  • 4
  • 0
  • 约6.85千字
  • 约 59页
  • 2019-03-23 发布于江苏
  • 举报
依赖倒转原则 依赖倒转原则分析 构造注入 public interface AbstractBook { public void view(); } public interface AbstractReader { public void read(); } public class ConcreteBook implements AbstractBook { public void view() { …… } } public class ConcreteReader implements AbstractReader { private AbstractBook book; public ConcreteReader(AbstractBook book) { this.book = book; } public void read() { book.view(); } } 依赖倒转原则 依赖倒转原则分析 设值注入 public interface AbstractBook { public void view(); } public interface AbstractReader { public void setBook(AbstractBook book); public void read(); } public class ConcreteBook implements AbstractBook { public void view() { } } public class ConcreteReader implements AbstractReader { private AbstractBook book; public void setBook(AbstractBook book) { this.book = book; } public void read() { book.view(); } } 依赖倒转原则 依赖倒转原则分析 接口注入 public interface AbstractBook { public void view(); } public interface AbstractReader { public void read(AbstractBook book); } public class ConcreteBook implements AbstractBook { public void view() { } } public class ConcreteReader implements AbstractReader { public void read(AbstractBook book) { book.view(); } } 依赖倒转原则 依赖倒转原则实例 实例说明 某系统提供一个数据转换模块,可以将来自不同数据源的数据转换成多种格式,如可以转换来自数据库的数据(DatabaseSource)、也可以转换来自文本文件的数据(TextSource),转换后的格式可以是xml文件(XMLTransformer)、也可以是xls文件(XLSTransformer)等。 依赖倒转原则 依赖倒转原则实例 实例说明 由于需求的变化,该系统可能需要增加新的数据源或者新的文件格式,每增加一个新的类型的数据源或者新的类型的文件格式,客户类MainClass都需要修改源代码,以便使用新的类,违背了开闭原则。现使用依赖倒转原则对其进行重构。 依赖倒转原则 依赖倒转原则实例 实例解析 接口隔离原则 接口隔离原则定义 接口隔离原则(Interface Segregation Principle, ISP)的定义如下: 客户端不应该依赖那些它不需要的接口。 注意,在该定义中的接口指的是所定义的方法。 另一种定义方法如下: 一旦一个接口太大,则需要将它分割成一些更细小的接口,使用该接口的客户端仅需知道与之相关的方法即可。 接口隔离原则 接口隔离原则分析 接口隔离原则是指使用多个专门的接口,而不使用单一的总接口。每一个接口应该承担一种相对独立的角色,不多不少,不干不该干的事,该干的事都要干。 (1) 一个接口就只代表一个角色,每个角色都有它特定的一个接口,此时这个原则可以叫做“角色隔离原则”。 (2) 接口仅仅提供客户端需要的行为,即所需的方法,客户端不需要的行为则隐藏起来,应当为客户端提供尽可能小的单独的接口,而不要提供大的总接口。 接口隔离原则 接口隔离原则分析 使用接口隔

文档评论(0)

1亿VIP精品文档

相关文档