Python实现代理模式
2024-10-18 22:35:59
from abc import ABCMeta, abstractmethod NOT_IMPLEMENTED = "You should implement this." class AbstractCar:
__metaclass__ = ABCMeta @abstractmethod
def drive(self):
raise NotImplementedError(NOT_IMPLEMENTED) class Car(AbstractCar):
def drive(self):
print("Car has been driven!") class Driver(object):
def __init__(self, age):
self.age = age class ProxyCar(AbstractCar):
def __init__(self, driver):
self.car = Car()
self.driver = driver def drive(self):
if self.driver.age <= 16:
print("Sorry, the driver is too young to drive.")
else:
self.car.drive() driver = Driver(16)
car = ProxyCar(driver)
car.drive() driver = Driver(25)
car = ProxyCar(driver)
car.drive()
摘自:wiki
最新文章
- Maven打包生成可运行bat/sh脚本文件
- shell 条件判断
- 一个简单的js实现倒计时函数
- SQL 会议消费记录统计
- .NET跨平台实践:用C#开发Linux守护进程(转)
- Oracle GoldenGate: 使用宏
- Java学习一
- microsoft azure 速度测试网址
- Java的基础概念
- Ubuntu---2
- openjudge(四)
- shell 查找与替换
- telnet mysql时出现:is not allowed to connect to this MySQL serverConnection closed by foreign host问题的解决
- 【转】WPF Template模版之DataTemplate与ControlTemplate(一)
- .Net Core创建Docker镜像
- Laravel线上布暑到linux的问题汇总
- .NET 使用 RabbitMQ 图文简介
- 04: nginx部署vue
- 获取DataView行数据
- C++进阶3.字节对齐 联合