1 抽象工厂模式的定义
抽象工厂模式是一种创建型设计模式,它提供了一种创建一组相关或相互依赖对象的方式,而无需指定它们的具体类。该模式以一组抽象接口为核心,包括抽象工厂接口和一组抽象产品接口,每个具体工厂类负责创建特定产品家族,保证这些产品之间的兼容性。客户端代码通过与抽象工厂和抽象产品接口交互,可以轻松地切换不同工厂来创建不同系列的产品,从而实现高内聚、低耦合的设计。
抽象工厂: 在抽象工厂模式中,我们首先定义一个抽象工厂,该工厂有多个方法,每个方法负责创建不同类型的产品,例如手机、电脑、手表等。在这个例子中,我们将创建一个AbstractFactory,其中包含了createPhone、createComputer、createWatch等方法,分别用于创建手机、电脑和手表。
具体工厂: 对于每个制造公司(小米和华为),我们会实现具体的工厂类,这些工厂类继承了抽象工厂并实现了其中的方法。例如,小米工厂类会实现createPhone方法以创建小米手机,createComputer方法以创建小米电脑,createWatch方法以创建小米手表。同样,华为工厂类也会有相应的实现。
抽象产品: 为了确保产品之间的兼容性,我们定义一组抽象产品类,如AbstractPhone、AbstractComputer、AbstractWatch等。每个抽象产品类定义了产品的通用接口,例如,AbstractPhone可以有makeCall方法。
具体产品: 每个具体工厂类都会创建特定品牌的产品,例如,小米工厂会创建小米手机、小米电脑、小米手表等。这些具体产品类实现了抽象产品类的接口,例如,XiaomiPhone类实现了AbstractPhone接口的makeCall方法。
客户端: 最后,客户端代码可以选择使用哪个具体工厂(小米或华为工厂),然后通过工厂创建产品。客户端不需要了解具体的产品如何创建,只需使用抽象工厂接口和抽象产品接口。
标签:9.20,创建,接口,工厂,抽象,产品,小米,日记 From: https://www.cnblogs.com/zhangmingmkzj/p/17716971.html