原型模式—Python (Dog)
作者:互联网
这种模式通常用于创建对象成本高昂的软件工程。例如游戏行业,您可以创建一个狗对象并在多个地方重复使用它,只是为了在屏幕上的不同旅程中展示多只狗的情况。狗的单个对象可以在游戏中的多个位置创建和使用。
导入复制 类 原型: def clone(self ):return copy.deepcopy(self) class 狗(原型):def __init__(self,name,breed,声音): self.name = name self.breed = breed self.sound = sound def bark(self): print(self.sound)if __name__ == '__main__': original_dog = Dog('Floki', 'Shiba Inu', 'AaAuuu!') cloned_dog = original_dog.clone() print(original_dog.name) # Floki original_dog.bark() # AaAuuu! print(cloned_dog.name) # Floki cloned_dog.bark() # AaAuuu! 打印(original_dog 是cloned_dog) # 假
深拷贝只是复制与原始狗相同的属性。但是,它将指向不同的内存。这就是为什么当我们在最后检查两个对象的内存时,我们会得到 false。您可以想象添加诸如bark之类的方法,当用户对其执行某些操作时,您想要播放哪种声音。