类模式实现:

class Earphone:
    def __init__(self, connector):
        self.connector = connector

    def play_music(self):
        print("Playing music through", self.connector)


class Adapter:
    def __init__(self, earphone, connector):
        self.earphone = earphone
        self.connector = connector

    def play_music(self):
        if self.connector == "3.5mm":
            print("Converting to 3.5mm audio jack")
        elif self.connector == "2.5mm":
            print("Converting to 2.5mm audio jack")
        elif self.connector == "USB Type-C":
            print("Converting to USB Type-C")
        elif self.connector == "lightning":
            print("Converting to lightning")
        else:
            print("Invalid connector type")
            return
        self.earphone.play_music()


# Usage
earphone = Earphone("3.5mm")
adapter = Adapter(earphone, "USB Type-C")
adapter.play_music()

对象模式实现:

class Earphone:
    def __init__(self, connector):
        self.connector = connector

    def play_music(self):
        print("Playing music through", self.connector)


class Adapter:
    def __init__(self, connector):
        self.connector = connector

    def play_music(self, earphone):
        if self.connector == "3.5mm":
            print("Converting to 3.5mm audio jack")
        elif self.connector == "2.5mm":
            print("Converting to 2.5mm audio jack")
        elif self.connector == "USB Type-C":
            print("Converting to USB Type-C")
        elif self.connector == "lightning":
            print("Converting to lightning")
        else:
            print("Invalid connector type")
            return
        earphone.play_music()


# Usage
earphone = Earphone("3.5mm")
adapter = Adapter("USB Type-C")
adapter.play_music(earphone)
``

原文地址: https://www.cveoy.top/t/topic/hjld 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录