博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python版本的原型模式
阅读量:5100 次
发布时间:2019-06-13

本文共 664 字,大约阅读时间需要 2 分钟。

一般在初始化信息不发生变化的情况下,克隆是最好的办法。原型模式还应用于知道某些部分会变更但又希望保持原有对象不变时的副本拷贝--引用和副本的问题

# -*- coding:UTF-8 -*-import abcfrom copy import deepcopyclass Prototype(metaclass=abc.ABCMeta):    def __init__(self, id_):        self.__id = id_    @property    def id(self):        return self.__id    @abc.abstractmethod    def clone(self):        passclass ConcretePrototype1(Prototype):    def clone(self):        return deepcopy(self)class ConcretePrototype2(Prototype):    def clone(self):        return deepcopy(self)if __name__ == "__main__":    p1 = ConcretePrototype1("I")    c1 = p1.clone()    print("Cloned:{0}".format(c1.id))

 

转载于:https://www.cnblogs.com/gjinwei/p/8351845.html

你可能感兴趣的文章
让字体在div容器中垂直居中
查看>>
Android Weekly Notes Issue #221
查看>>
mmap和MappedByteBuffer
查看>>
Linux的基本操作
查看>>
C 算法
查看>>
使用fiddler进程弱网测试
查看>>
jdk path
查看>>
敏捷开发笔记 - 设计
查看>>
我需要在电脑上安装C编译器
查看>>
oracle一次删除多张表
查看>>
H3C 配置CHAP验证
查看>>
H3C ICMP
查看>>
Python Numpy 介绍
查看>>
【Java】Java环境变量配置
查看>>
jQuery给标签写入内容
查看>>
【GoLang】golang 微服务框架 介绍
查看>>
【OpenStack】OpenStack系列10之Horizon详解
查看>>
音效引擎
查看>>
基尔霍夫定律
查看>>
Android activity间通讯几种方式
查看>>