(2)设计模式之工厂方法模式(创建型模式)
来源:互联网 发布:青云志数据库 编辑:程序博客网 时间:2024/06/03 18:02
声明:以下都是博主浅薄的经验之谈,欢迎大家学习交流
- 博主是参考这个视频进行学习总结的:
- 设计模式学习视频(点击我)
- 提取码 : ivtk
(1)设计模式之简单工厂模式(创建型模式)存在着一个缺点不符合设计模式的封闭原则:当需要创建的对象多了的话,需要不断的去动内部的代码。于是工厂方法模式就诞生了。先上类图
- Fruit.java
public interface Fruit { public void collect();}
- Apple.java
public class Apple implements Fruit{ @Override public void collect() { System.out.println("采集苹果.."); }}
- Banana.java
public class Banana implements Fruit { @Override public void collect() { System.out.println("采集香蕉.."); }}
- FruitFactory.java
package com.dyx.design.factorymethod;public interface FruitFactory { public Fruit productionFruit();}
- AppleFactory.java
package com.dyx.design.factorymethod;/** * 描述:水果工厂 */public class AppleFactory implements FruitFactory { @Override public Fruit productionFruit() { return new Apple(); }}
- BananaFactory.java
package com.dyx.design.factorymethod;public class BananaFactory implements FruitFactory { @Override public Fruit productionFruit() { return new Banana(); }}
- Main.java
package com.dyx.design.factorymethod;/** * 描述: 工厂方法模式 * 工厂方法退化后可以演变成简单工厂模式 */public class Main { public static void main(String[] args) { AppleFactory aFactory = new AppleFactory(); Fruit aFruit = aFactory.productionFruit(); aFruit.collect(); BananaFactory bFactory = new BananaFactory(); Fruit bFruit = bFactory.productionFruit(); bFruit.collect(); //后期如果要添加新水果类的话,按如下步骤来: //1.添加一个实现Fruit的接口类 //2.添加一个生产你要的水果工厂 //嘿嘿,到这边知道这个模式的好处了吧,是不是不动原先的代码。通过添加类就实现功能呢 //(耦合度是不是降低了呢?) }}
欢迎留言交流!!
- 博主是参考这个视频进行学习总结的:
- 设计模式学习视频(点击我)
- 提取码 : ivtk
0 0
- java设计模式(创建型)之工厂方法模式
- 设计模式之---创建型模式(一)--工厂方法模式
- java设计模式之创建型模式-工厂方法模式
- java 设计模式-创建模式之工厂方法模式2
- (2)设计模式之--创建型模式---工厂方法模式Factory Method
- (2)设计模式之工厂方法模式(创建型模式)
- "围观"设计模式(8)--创建型之简单工厂模式、工厂方法模式、抽象工厂模式
- "围观"设计模式(8)--创建型之简单工厂模式、工厂方法模式、抽象工厂模式
- 设计模式-工厂方法模式(创建型模式)
- (4)设计模式方法-创建型设计模式--:简单工厂模式【【【工厂方法模式
- 设计模式之创建型模式(2)--工厂模式
- 设计模式-创建型模式-工厂方法
- 【设计模式】创建型模式-工厂方法
- 设计模式-创建型模式之 Factory Method(工厂方法)
- JAVA设计模式创建型模式之工厂方法
- java设计模式之创建型模式-FactoryMethod ( 工厂方法 )
- 创建型设计模式之工厂方法模式FactoryMethod
- 【设计模式】创建型模式之工厂方法Factory Method
- 数据库SQL优化大总结之 百万级数据库优化方案
- Grails中的Services
- PO BO VO DTO POJO DAO DO这些在Java中的概念
- Two Sum
- JavaScript的性能优化:加载和执行
- (2)设计模式之工厂方法模式(创建型模式)
- linux下vlan的实现分析(上)
- 移动前端开发之viewport的深入理解
- tiny6410 nandflash驱动设计
- LBP特征
- 资源
- Integer用==比较会出现两种结果
- vim设置
- Android Studio 使用MediaRecorder 录音