0x01 意图
为其他对象提供一种代理以控制对这个对象的访问。
0x02 适用场景
UML类图实例:为别人做嫁衣
0x03 代码
# coding:utf-8
import os
import json
################## 代理抽象类 ##################
class Subject(object):
def __init__(self):
pass
def give_gift(self):
pass
################## 追求者类 ##################
class Zhuiqiuzhe(Subject):
def __init__(self, girl):
self.girl_o = girl
def give_gift(self):
print self.girl_o.myname, "give u gift"
################## 代理类 ##################
class Proxy(Subject):
def __init__(self, gg_t):
self.zqz = Zhuiqiuzhe(gg_t)
def give_gift(self):
self.zqz.give_gift()
################## 客户端代码 ##################
class Girl(object):
def __init__(self, name):
self.myname = name
gg = Girl("YangLiu")
pxy = Proxy(gg)
pxy.give_gift()
欢迎关注微信公众号(coder0x00)或扫描下方二维码关注,我们将持续搜寻程序员必备基础技能包提供给大家。
网友评论