设计模式——抽象工厂模式

  前两节我们讲了抽象工厂模式和工厂模式,但是这两种模式都存在一个问题,就是一个工程可能不只生产一种物品,可能生产多种产品,所以,就引出了我们今天要讲的抽象工厂模式。
  抽象工厂模式由五部分构成。
  1.抽象产品类
  2.具体产品类
  3.抽象工厂类
  4.具体工厂类
  5.客户端类
  下面是实例代码:
public interface TV //抽象产品
{
public void play();
}
public interface AirConditioner//抽象产品
{
public void changeAirQuantity();
}
public class TCLTV implements TV //具体产品类
{
public void play()
{
System.out.println(“This is TCL”);
}
}
public class HaierTV implements TV //具体产品类
{
public void play()
{
System.out.println(“This is Haier”);
}
}
public class TCLAir implements AirConditioner //具体产品类
{
public void changeairquantity()
{
System.out.println(“Air quantity is better TCL”);
}
}
public class HaierAir implements AirConditioner //具体产品类
{
public void changeairquantity()
{
System.out.println(“Air quantity is better Haier”);
}
}
public interface factory //抽象工厂类
{
public TV produceTV();
public Airconditioner produceAir();
}
public class HaierFactory implements //具体工厂类
{
public TV produceTV()
{
return new HaierTV();
}
public AirConditioner peoduceAir()
{
return new HaierAirconditioner();
}
}
ublic class TCLFactory implements //具体工厂类
{
public TV produceTV()
{
return new TCLTV();
}
public AirConditioner peoduceAir()
{
return new TCLAirconditioner();
}
}
public class client //客户端类
{
public static void main(String args[])
{
//此处代码与上一篇工厂模式类似,判断要创建的品牌和产品,然后进行创建。
}
}

by JLUspring 请不吝赐教

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值