创建一个Person类,一个程序员类,一个设计师类
人类初始化属性name,定义work方法
程序员和设计师都继承人类,
但因为职业不同,所以工作的内容也不同,需要重写父类的work方法,实现不同的内容。
编程实现:
class Person(object):
def __init__(self,name):
self.name = name
def work(self):
pass # 这里的方法实现不写,由子类去实现
class ChengXuYuan(Person):
def work(self):
print(f'{self.name} 是一名程序员,他的工作是编写代码')
class SheJiShi(Person):
def work(self):
print(f'{self.name} 是一名设计师,她的工作是绘制CAD图')
def show_work(person):
person.work()
dongdong = ChengXuYuan('东东')
beibei = SheJiShi('贝贝')
# 多态的体现:调用同一个方法,输出的内容不相同
show_work(dongdong)
show_work(beibei)
运行结果