创建型-工厂方法

2019-03-31  本文已影响0人  iarchitect

工厂方法模式:

工厂父类(接口)负责定义产品对象的公共接口,子类工厂负责创建具体的产品对象

public interface Car {
     void run();
}

public class Bike implements Car{
    @Override
    public void run() {
        System.out.println("我是自行车");
    }
}

public class Bus implements Car{

    @Override
    public void run() {
        System.out.println("我是公交车");
    }
}

public interface IFactory {
    Car getCar();
}

public class BikeFactory implements IFactory {
    @Override
    public Car getCar() {
        return new Bike();
    }
}

public class BusFactory implements IFactory{
    @Override
    public Car getCar() {
        return new Bus();
    }
}

public class Client {
    public static void main(String[] args) {
        IFactory factory = null;

        factory = new BikeFactory();
        Car bike = factory.getCar();
        bike.run();

        factory = new BusFactory();
        Car bus = factory.getCar();
        bus.run();
    }
}

运行结果

image.png
上一篇 下一篇

猜你喜欢

热点阅读