python简单工厂模式

简单工厂模式相当于是一个4s店中有各种汽车,创建在一个类中,客户无需知道具体汽车型号,只需要知道汽车类所对应的参数即可。但是工厂的职责过重,而且当类型过多时不利于系统的扩展维护。

#现代汽车4s店类
class CarStore(object):

    #示例方法  创建工厂返回工厂对象引用
    def __init__(self):
        self.factory = Factory()

    #实现业务
    def order(self, car_type):
        return self.factory.select_car_by_type(car_type)

#工厂类
class Factory(object):
    #具体实现
    def select_car_by_type(self, car_type):
        if car_type=="索纳塔":
            return Suonata()
        elif car_type=="名图":
            return Mingtu()
        elif car_type=="ix35":
            return Ix35()
#汽车父类
class Car(object):
    def move(self):
        print("车在移动....")
    def music(self):
        print("正在播放音乐....")
    def stop(self):
        print("车在停止....")

#具体汽车类
class Suonata(Car):
    pass

class Mingtu(Car):
    pass

class Ix35(Car):
    pass

car_store = CarStore()
car = car_store.order("索纳塔")
car.move()
car.music()
car.stop()

猜你喜欢

转载自blog.csdn.net/zbx931197485/article/details/80211391
今日推荐