如何在PYTHON里面实现多态

2025-07-21 17:44:31

1、首先这里新建一个PY文档。

如何在PYTHON里面实现多态

2、class Children(object): def __init__(self, name): self.name = name def play(self): print("playing video games.") class Baby(Children): def play(self): print("playing toys.") #创建父类和子类,让子类继承父类的方法并且重写。

如何在PYTHON里面实现多态

3、class Children(object): def __init__(self, name): self.name = name def play(self): print("playing video games.") class Baby(Children): def play(self): print("playing toys.") class Adult(object): def __init__(self): self.name = name def play_with_kid(self, kid): print("%s and %s are %s" %(kid.name, self.name, kid.play)) #如果我们定义另外一个类,要求和另外两个父子类有关联,可以实现吗?

如何在PYTHON里面实现多态

4、clas衡痕贤伎s Children(object): def __init__(self, name): self.name = na罪焐芡拂me def play(self): print("playing video games.") class Baby(Children): def play(self): print("playing toys.") class Adult(object): def __init__(self, name): self.name = name def play_with_kid(self, kid): print("%s and %s are playing." % (kid.name, self.name)) kid.play() peter = Children("Peter")father = Adult("Father")father.play_with_kid(peter)#这个时候可以看出在另一个类里面设置参数,只要另一个类符合,都是可以调用的。

如何在PYTHON里面实现多态

5、class Children(object): def __init__(self, name): self.name = name def play(self): print("playing video games.") class Baby(Children): def play(self): print("playing toys.") class Adult(object): def __init__(self, name): self.name = name def play_with_kid(self, kid): return "I am " + str(kid.play()) alice = Baby("Alice")father = Adult("Father")father.play_with_kid(alice)#但是这里要注意的是如果这样调用方法是不行的,因为属于None。

如何在PYTHON里面实现多态

6、clas衡痕贤伎s Children(object): def __init__(self, name): self.name = na罪焐芡拂me def play(self): print("playing video games.") class Baby(Children): def play(self): print("playing toys.") class Adult(object): def __init__(self, name): self.name = name def play_with_kid(self, kid): print("%s and %s are playing." % (kid.name, self.name)) kid.play() peter = Children("Peter")mother = Adult("Mom")mother.play_with_kid(peter)#即使另外一个类换了对象,也是一样能够进行关联。

如何在PYTHON里面实现多态
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢