简单工厂模式 Simple Factory

工厂模式在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象

定义:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行

意义:为了解决接口选择的问题

关键:创建过程在子类中进行

代码实现

class Car:
    @abstractmethod
    def driver(self):
        pass

class Benz(Car):
    def driver(self):
        print("This is a Benz car~!")

class BMW(Car):
    def driver(self):
        print("This is a BMW car~!")

class CarFactory():
    @staticmethod
    def get_car(car_name):
        if car_name == "Benz":
            return Benz()
        elif car_name == "BMW":
            return BMW()
        return None

你可能感兴趣的:(简单工厂模式 Simple Factory)