简单工厂

今天简单了解了一下什么叫简单工厂。

先写一个简单的计算器,然后对它修改,一步一步体会。

接下来我们封装一下,封装就是把计算方法的那部分提取出来,公用,这种方式不是原始的计算机逻辑,采用面向对象编程。

变成一个计算方法和一个调用方法的主函数。

上面的是简单的加减乘除,如果乘法要扩展的话,这种方法不好扩展,比如算月薪,员工*1.1,经理*1.2,这行代码不容易满足需求。所以我们可以采取另一种编码方式。

简单工厂模式,工厂是创造实例用的。我写了两种,第一种是正确的,第二种关于从父类取值,有点不一样。

-------------------------------------------------------------------------------------------------------------------------------------------------------

结果是6.0

第二种-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

结果为25.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
简单工厂模式是一种创建型设计模式,它提供了一种创建对象的最佳方式。简单工厂模式允许客户端通过传递类型参数来请求创建不同类型的对象,而无需知道实际创建的对象类的具体实现细节。 对于咖啡店而言,简单工厂模式可以用来创建不同种类的咖啡。例如,简单工厂模式可以创建美式咖啡、拿铁咖啡、卡布奇诺等等。简单工厂模式通常由一个工厂类来实现,它负责根据客户端请求的不同种类来创建相应的咖啡对象。 下面是一个简单工厂模式创建咖啡的示例代码: ``` // 定义咖啡接口 interface Coffee { void makeCoffee(); } // 实现美式咖啡 class AmericanCoffee implements Coffee { @Override public void makeCoffee() { System.out.println("制作美式咖啡..."); } } // 实现拿铁咖啡 class LatteCoffee implements Coffee { @Override public void makeCoffee() { System.out.println("制作拿铁咖啡..."); } } // 实现卡布奇诺咖啡 class CappuccinoCoffee implements Coffee { @Override public void makeCoffee() { System.out.println("制作卡布奇诺咖啡..."); } } // 定义咖啡工厂类 class CoffeeFactory { public static Coffee createCoffee(String type) { switch (type) { case "American": return new AmericanCoffee(); case "Latte": return new LatteCoffee(); case "Cappuccino": return new CappuccinoCoffee(); default: throw new IllegalArgumentException("Unsupported coffee type: " + type); } } } // 客户端代码 public class Client { public static void main(String[] args) { Coffee american = CoffeeFactory.createCoffee("American"); american.makeCoffee(); Coffee latte = CoffeeFactory.createCoffee("Latte"); latte.makeCoffee(); Coffee cappuccino = CoffeeFactory.createCoffee("Cappuccino"); cappuccino.makeCoffee(); } } ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值