zoukankan      html  css  js  c++  java
  • 工厂方法模式

    抽象Car类:
    public abstract class Car{
      public abstract void createCar();
    }
    
    具体实现类:
    public class AuDi extends Car{
      @Override
      public void createCar(){
        System.out.println("Audi");
      }
    }
    public class BMW extends Car{
      @Override
      public void createCar(){
        System.out.println("BMW");
      }
    }
    工厂类:
    public class FactoryCar{
      public static <T extends Car> getCar(class<T> clz){
        Car car = null;
        try{
          car = (Car) class.forName(clz.getName()).newInstance();
        }catch(Exception e){
          e.printStackTrace();
        }
        
        return (T) car;
      }
    }
    
    使用factory:
    Car audi = FactoryCar.getCar(Audi.class);
    audi.createCar();
    
    Car bmw = FactoryCar.getCar(Audi.class);
    bmw.createCar();
    

      

      

    抽象car类可以换成接口,具体看:http://www.runoob.com/design-pattern/factory-pattern.html

  • 相关阅读:
    移动端 滑动框架
    汇编学习笔记48
    走进C#,走进linq
    汇编学习笔记之终结
    汇编学习笔记47
    汇编学习笔记46
    汇编学习笔记51(剧终)
    汇编学习笔记45
    汇编学习笔记50
    汇编学习笔记44
  • 原文地址:https://www.cnblogs.com/IT-lss/p/9705608.html
Copyright © 2011-2022 走看看