抽象工厂设计模式

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

以下为代码逻辑介绍:

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

 

posted @ 2019-09-23 17:54  蓝色丶格调  阅读(216)  评论(0编辑  收藏  举报