设计模式(一):工厂模式(简单工厂)

本文通过一个简单的例子介绍了工厂模式的应用场景及其实现方式。通过定义一个产品接口和具体的产品实现类,再结合创建者抽象类及具体创建者实现类,展示了如何在不修改现有代码的情况下扩展新的产品类型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以前总觉得设计模式纯属扯淡,浪费精力,10代码能搞定的事情非要写那么多的接口或者实现类.

为什么要用设计模式,开发有一个重要的原则:对修改关闭,对扩展开放.因为如果把代码全部都杂糅到一个类中,第一代码复用性太差,扩展性不强.第二,修改起来一改巨改,代码改动即意味着要增加测试人员工作量,且引入修改bug如果一步小心扣除绩效工资,真是太不划算了.

下面让我们学习一下设计模式之工厂模式:

1.产品接口

package com.example;

public interface Product {
	
	/**
	 * 生产者的父类
	 */
	public abstract void make();
	
}

产品接口中一个抽象方法,make();

2.产品具体实现

package com.example;

public class Washer implements Product {

	/**
	 * 洗衣机具体产品,实现产品接口
	 */
	@Override
	public void make() {
		System.out.println("生产洗衣机");
	}

}

3.创建者

package com.example;

public abstract class Creator {
	/**
	 * 生产者的父类抽象方法
	 */
	public abstract Product create();
	
	/**
	 * 生产产品
	 */
	public void product() {
		 create().make();
	}
	
}

4.创建者实现

package com.example;

public class WasherCreater extends Creator{

	@Override
	public Product create() {
		return new Washer();
	}

}

在调用的时候只需:

	WasherCreater washerCreater = new WasherCreater();
		washerCreater.product();
即可调用.





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值