Python面向对象编程三大特性之多态

Python面向对象编程三大特性之多态,第1张

多态

code:_9polymorphism.py

# *****************************************
"""
多态:对于同一个方法,传递的参数(包括self参数)不同,实现不同的结果。
定义接口,使用继承实现多态
"""


class computer():
    def usb(self,obj):
        obj.start()


class USB():
    # 这是一个接口类,没有实现,定义了一个start成员函数但是没有实现,要求所有继承USB类的类都实现start成员函数。
    # 它的目的主要是形成标准
    def start(self):
        pass


class mouse(USB):
    def start(self):
        print("鼠标启动啦!")


class keyboard(USB):
    def start(self):
        print("键盘启动啦!")


class usb_storage(USB):
    def start(self):
        print("usb存储设备启动啦!")


# 这里是使用普通方法实现多态
con = computer()
mou = mouse()
key = keyboard()
usb_s = usb_storage()
con.usb(mou)
con.usb(key)
con.usb(usb_s)
# 定义接口,使用继承实现多态
mou.start()
key.start()
usb_s.start()

运行结果:

E:\Programs_Way\Python\python.exe D:/Prj/_PythonSelf/Object_oriented_programming/_9polymorphism.py
鼠标启动啦!
键盘启动啦!
usb存储设备启动啦!
鼠标启动啦!
键盘启动啦!
usb存储设备启动啦!

Process finished with exit code 0

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/714079.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-24
下一篇 2022-04-24

发表评论

登录后才能评论

评论列表(0条)

保存