码迷,mamicode.com
首页 > 其他好文 > 详细

抽象工厂设计模式

时间:2019-09-23 18:23:46      阅读:93      评论:0      收藏:0      [点我收藏+]

标签:put   生产   bsp   main   实现   new   抽象工厂   内存   over   

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

以下为代码逻辑介绍:

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();
}

 

抽象工厂设计模式

标签:put   生产   bsp   main   实现   new   抽象工厂   内存   over   

原文地址:https://www.cnblogs.com/lanSeGeDiao/p/11573750.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!