デザインパターンの工場モードコード

動物は犬及び猫が親クラスを継承し、その後、ファクトリクラスを作成し、静的な方法で一致ルールを設定するために、親クラスである
方法と通話モードの同一の例、着信の内容に応じて、結果が異なります。

class Animal:
    def __init__(self, name):
        self.__name = name

    def getName(self):
        return self.__name


class Dog(Animal):
    def __init__(self, name):
        super().__init__(name)

    def getName(self):
        return "dog"


class Cat(Animal):
    def __init__(self, name):
        super().__init__(name)

    def getName(self):
        return "cat"


class AnimailMake:
    @staticmethod
    def makeanimial(name):
        am = None
        if name == "cat":
            am = Cat(name)
        elif name == "dog":
            am = Dog(name)
        else:
            am = Animal(name)
        return am


if __name__ == '__main__':
    am = AnimailMake.makeanimial("cat")
    print(am.getName())
    am = AnimailMake.makeanimial("dog")
    print(am.getName())
    am = AnimailMake.makeanimial("?")
    print(am.getName())

おすすめ

転載: www.cnblogs.com/c-x-a/p/10950863.html