C#工厂模式:简单工厂与抽象工厂实例应用

需积分: 16 1 下载量 191 浏览量 更新于2024-09-12 收藏 48KB DOCX 举报
本文档探讨了C#中的两种工厂模式,即简单工厂模式和抽象工厂模式,并通过实际代码实例来展示它们的应用。首先,我们来看简单工厂模式: 简单工厂模式是一种创建型设计模式,它允许我们在不指定具体类的情况下创建对象。在这个例子中,`InterFaceFactory.CreateSample()` 和 `CreateSample2()` 方法就是简单工厂的实现。它们返回的是`DBSample`和`DBSample2`的实例,但具体是哪个子类实例是由工厂方法内部决定的。这降低了代码中对具体类的依赖,使得代码更加灵活。在`BindData()`方法中,我们看到对不同类型的数据库样本进行操作,并打印出它们的值。 接下来是抽象工厂模式的演示。抽象工厂模式提供了一种创建一系列相关或相互依赖对象的接口,而无需指定它们的具体类。在这个场景中,`ComputerFactory`是一个抽象工厂,它定义了创建`ICPU`、`IRAM`等接口所需的操作。`MacCPU`、`PcCPU`和`MacRAM`等具体类实现了`ICPU`和`IRAM`接口,分别代表不同类型的CPU和RAM。`CreatePcCPU()`、`CreateMacCPU()`和`CreateMacRAM()`方法可以根据需要返回相应的硬件组件实例。 抽象工厂模式的优势在于,它可以方便地扩展新的产品系列,只需添加新的子类而不影响现有代码。通过这个例子,我们可以看到如何通过接口和抽象类组织代码,保持了良好的模块化和可维护性。 总结起来,C#中的工厂模式在软件设计中扮演着创建对象的灵活工具角色,无论是简单工厂模式通过单一的接口创建对象,还是抽象工厂模式支持多个相关产品的组合生成,都体现了面向对象编程中的封装、继承和多态原则。通过使用这些设计模式,开发者可以更好地管理复杂系统中的对象创建和依赖关系。