zoukankan      html  css  js  c++  java
  • 抽象工厂设计模式

     抽象工厂模式理解:用户从工厂获取产品,工厂负责组装不同的零件形成产品。设计分三类:工厂(接口+实现类)、零件(接口+实现类)、客户,以上三种类

    以下为代码逻辑介绍:

    1、创建产品 与 工厂的抽象类
       1.1抽象工厂有两个抽象方法 生产内存ram 与 系统system
    2、各类产品的实现类 如ram1G ram512
    3、创建并实现抽象工厂并组装对应的零件的多个具体工厂

    //业务需求:生产不同内存条搭配Win7系统的电脑 
    
    //定义抽象工厂
    public interface AbstastFactory  {
      public Ram createRam();
      public WinSystem createSys();
    }
    //具体工厂实现 低端电脑配置
    public class LowComputer implements AbstastFactory {
        @Override
        public Ram createRam() { return new Ram512(); }
        @Override
        public WinSystem createSys() { return new SystemWin7(); }
    }
    //具体工厂实现 高端电脑配置
    public class NiceComputer implements AbstastFactory {
        @Override
        public Ram createRam() { return new Ram1G(); }
        @Override
        public WinSystem createSys() { return new SystemWin7(); }
    }
    
    //内存条接口
    public interface Ram {}
    //512内存条实现类
    public class Ram1G implements Ram {
        public Ram1G() {
            System.out.println("1G内存");
        }
    }
    
    //1G内存条实现类
    public class Ram512  implements Ram {
         public  Ram512(){
             System.out.println("512内存");
         }
    }
    //系统接口
    public interface WinSystem {}
    //win7系统实现类
    public class SystemWin7 implements WinSystem {
        public SystemWin7() {
            System.out.println("win7");
        }
    }
    //客户类拿到具体产品
    public static void main(String[] args) {
            LowComputer lowComputer = new LowComputer();
            lowComputer.createRam();
            lowComputer.createSys();
    }
  • 相关阅读:
    【转】总体样本方差的无偏估计样本方差为什么除以n-1
    【转】用PyQt5写的第一个程序
    向量的协方差计算
    数据挖掘模型
    数据挖掘方法论及实施步骤
    Hadoop MapReduce八大步骤以及Yarn工作原理详解
    传统数据仓库架构与Hadoop的区别
    数据库优化方案整理
    数仓interview总结
    十四个值得推荐的个人提升方法
  • 原文地址:https://www.cnblogs.com/lanSeGeDiao/p/11573750.html
Copyright © 2011-2022 走看看