# coding=utf-8
from __future__ import print_function
import time
# 销售经理
class SalesManager:
def talk(self):
print("\t<销售经理>准备谈\n")
# 秘书【充当代理】
class Proxy:
def __init__(self):
self.busy = 'No' # 空闲
self.sales = None
def talk(self):
print("秘书检查<销售经理>的行程...")
if self.busy == 'No':
self.sales = SalesManager( )
time.sleep(0.1)
self.sales.talk( )
else:
time.sleep(0.1)
print("\t<销售经理>很忙\n")
# 秘书回复请示人【销售经理最近不见人】
class NoTalkProxy(Proxy):
def talk(self):
print("秘书检查<销售经理>的留言信息...")
time.sleep(0.1)
print("\t此<销售经理>不会与您交谈”,“无论他/她是否忙\n")
if __name__ == '__main__':
p = Proxy( )
p.talk( )
p.busy = 'Yes' # 忙碌
p.talk( )
t = NoTalkProxy( ) # 经理最近不见人【代理<销售经理>回绝请示人】
t.talk( ) # 不管销售经理是空闲
t.busy = 'Yes'
t.talk( ) # 不管销售经理还是忙碌
输出:
秘书检查<销售经理>的行程...
<销售经理>准备谈
秘书检查<销售经理>的行程...
<销售经理>很忙
秘书检查<销售经理>的留言信息...
此<销售经理>不会与您交谈”,“无论他/她是否忙
秘书检查<销售经理>的留言信息...
此<销售经理>不会与您交谈”,“无论他/她是否忙