python_面向对象——多态

耗尽温柔 提交于 2019-12-05 04:17:47

1.同一接口,多种形态

class Document:
    def __init__(self,name):
        self.name = name

    def show(self):
        # 异常处理:提示子类必须把此方法重新写一遍
        raise NotADirectoryError('子类必须把此方法重新写一遍')

class Pdf(Document):
    def show(self):
        print('pdf文档')

class Word(Document):
    def show(self):
        print('word文档')

pdf_obj = Pdf('wdc.pdf')
word_obj = Word('yhf.doc')
# 将多个对象放到一个列表中
objs = [pdf_obj,word_obj]
# 循环这个列表,来实现同一接口多种形态
for i in objs:
    i.show()

 

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!