python3.6
from copy import copy, deepcopy
class Prototype:
def clone(self):
pass
def deepclone(self):
pass
class WorkExperience(Prototype):
def __init__(self):
self.workdate = ''
self.company = ''
def set_workexperience(self, workdate, company):
self.workdate = workdate
self.company = company
class Resume(Prototype):
def __init__(self, name):
self.name = name
self.workexperience = WorkExperience()
def set_personinfo(self, sex, age):
self.sex = sex
self.age = age
def set_workexperience(self, workdate, company):
self.workexperience.set_workexperience(workdate, company)
def display(self):
print(self.name, self.sex, self.age)
print("工作经历", self.workexperience.workdate, self.workexperience.company)
def clone(self):
return copy(self)
def deepclone(self):
return deepcopy(self)
if __name__ == "__main__":
a = Resume("大鸟")
a.set_personinfo("男", "29")
a.set_workexperience("1998-2000", "XX公司")
b = a.clone()
b.set_workexperience("1998-2006", "YY公司")
c = a.deepclone()
c.set_personinfo("男", "24")
c.set_workexperience("1998-2003", "ZZ公司")
a.display()
b.display()
c.display()