# /*外观模式:为外界调用提供一个统一的接口,把其他类中需要用到的方法提取# * 出来,由外观类进行调用。然后在调用段实例化外观类,以间接调用需要的# * 方法。这种方式和代理模式有异曲同工之妙。然而,根据迪米特法则,代理# * 模式应该尽可能的为单个对象进行代理。而外观模式更像是从众多类中提取# * 有用的方法而组合成的新类*/ class Invoke1: def methon1(self): print ‘调用1‘ class Invoke2: def methon2(self): print ‘调用2‘ class Invoke3: def methon3(self): print ‘调用3‘ class Facde: def __init__(self): self.a = Invoke1() self.b = Invoke2() self.c = Invoke3() def unit1(self): self.a.methon1() self.b.methon2() self.c.methon3() def unit2(self): self.a.methon1() self.b.methon2() if __name__ == "__main__": facde = Facde() facde.unit1() facde.unit2()
时间: 2024-10-08 08:16:35