码迷,mamicode.com
首页 > 编程语言 > 详细

python之类的多态

时间:2020-05-06 14:11:39      阅读:63      评论:0      收藏:0      [点我收藏+]

标签:重用   __init__   本质   依赖   open   对象   就是   ini   类型   

多态:一种接口,多种实现

容许将子类类型的指针赋值给父类类型的指针。

作用:实现接口的重用

#Author:Anliu
# 多态本质上就是一个对象的多种形态。
# 不同的状态的描述需要抽象成类的多个子类,因而多态的概念依赖于继承
# 例如对于“文件”这个类来说,将有“文本文件”,“可执行文件”,“链接文件”,“设备文件”等等形态。
# 那如何给这些形态定义一个统一接口,就是多态干的事情。
class file():
    """
    定义一个父类
    """
    def __init__(self,name,handle):
        self.name = name
        self.handle = handle

    def storage(self):
        print("file of name: %s is storage in disk.."%self.name)

    @staticmethod         #定义统一接口的方法
    def file_open(obj):
        obj.open("name")

class text(file):  #文件的第一种状态
    def open(self,name):
        print("%s: text open file.."%name)

class exe(file):   #文件的第二种状态
    def open(self,name):
        print("%s: exe open file.."%name)

text1 = text("db","110011")
exe1 = exe("command","110001")

#def file_open(obj):
#    obj.open()

#text1.open()
file.file_open(text1)   #一种接口file.file_open()的多种状态
file.file_open(exe1)

python之类的多态

标签:重用   __init__   本质   依赖   open   对象   就是   ini   类型   

原文地址:https://www.cnblogs.com/anttech/p/12835621.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!