工厂模式

在看这个工厂模式前,先理解下几种角色:

工厂类角色:该角色用来创建具体的功能产品。比如工厂富士康

抽象产品角色:这个就好比是现在这个富士康做电脑。那么就需要抽象出一个电脑的产品角色;

具体产品角色:具体产品角色需要实现抽象产品角色,比如联想、华硕等

然后可以直接告诉工程我想要一个联想电脑,然后工厂类角色就创建一个联想电脑给客户;

工厂类角色(有创建具体产品的能力):

public class Creator
//工厂类角色,这个是使用一个具体类来实现,这个就相当于将具体的那个笔记本通过这个工厂进行实现
{
	public static Product createProduct(String string)
	{
		if("A".equals(string))
		{
			return new ConcreteProductA();
		}
		else if("B".equals(string))
		{
			return new ConcreteProductB();
		}
		return null;
	}

}

抽象产品角色:

public abstract class Product
//这个是一个抽象产品角色
/*
 * 担任这个角色的类是简单工厂模式所创建的对象的父类,或它们共同拥有的接口。
 * 抽象产品角色可以用一个接口或者抽象类实现
 */
{


}

具体产品角色:

public class ConcreteProductA extends Product
//这个是一个具体产品角色
{

}

客户端:告诉工厂角色,你要给我一个A,那么工厂就有创造的能力那么就创造出了一个A(实体对象)返回给用户

public class Client
{
	public static void main(String[] args)
	{
		Product productA = Creator.createProduct("A");
		System.out.println(productA.getClass().getName());
		
		Product producB = Creator.createProduct("B");
		System.out.println(producB.getClass().getName());
	}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值