Python设计模式-中介者模式

中介者模式:用一个中介对象封装一系列的对象交互,中介者使各对象不需要显式相互引用,从而使其耦合性降低,而且可以独立低改变他们之间的交互。

from abc import ABCMeta,abstractmethod

class HouseInfo:
    def __init__(self,address,ower):
        self.__address = address
        self.__ower = ower

    def getAddress(self):
        return self.__address

    def getOwerName(self):
        return self.__ower.getName()

    def showInfo(self):
        print("房子:"+self._address + " 房东是:"+self.__ower.getName())

class HouseAgency:

    def __init__(self,name):
        self.__houseInfos =[]
        self.__name = name

    def getName(self):
        return self.__name

    def addHouse(self,house):
        self.__houseInfos.append(house)

    def getMatchInfo(self,searchCondition):
        return self.__houseInfos

class HouseOwner:
    def __init__(self,name):
        self.__name = name
        self.__houseInfo = None

    def setHouseInfo(self,addess):
        self.__houseInfo = HouseInfo(address,self)

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

    def getName(self):
        return self.__name

    def findHouse(self,agency,condition):
        return agency.getMatchInfo(condition)

aaa

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