python设计模式-适配器模式

适配器模式

(一)什么是适配器模式

适配器模式(Adapter pattern)是一种结构型设计模式,帮助我们实现两个不兼容接口之间 的兼容。

(二)适配器

# -*- coding: utf-8 -*-
class Dog:
    '''这是一个原始类'''
    def __init__(self):
        self.name = 'wangcai'

    def call(self):
        print u'旺'

class Cat:
    '''标准cat类'''
    def __init__(self):
        self.name = 'ketty'

    def cry(self):
        print u'喵'

# 先在我们想让一个这个Cat类和Dog类适配,也就是说,使用永阳的cry接口,猫打印出喵,狗打印出旺
class Adapter:
    '''定义一个adapter类'''
    def __init__(self, obj):
        self.obj = obj

    # 适配Cat类
    def cry(self):
        self.obj.call()


if __name__ == '__main__':
    objs = []
    dog = Dog()
    cat = Cat()
    objs.extend((cat, Adapter(dog)))   # 适配接口
    for obj in objs:
        obj.cry()   # 调用相同的接口

你可能感兴趣的:(python设计模式,python设计模式,适配器模式)