码迷,mamicode.com
首页 > 其他好文 > 详细

继承类构造方法使用

时间:2019-06-28 22:37:14      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:类构造   一个   绑定   init   pre   type   div   hung   情况下   

1,调用未绑定的超类构造方法

class Bird:
    def __init__(self):
        self.hungry = True

    def eat(self):
        if self.hungry:
            print("eee")
            self.hungry = False
        else:
            print("No,thanks!")
        # print("eat!")


class SongBird(Bird):
    def __init__(self):
        Bird.__init__(self)
        self.sound = "squak"

    def sing(self):
        print (self.sound)


sb = SongBird()
sb.eat()

 

2,使用super函数

__metaclass__=type#super函数只在新式类中起作用
class Bird:
    def __init__(self):
        self.hungry = True

    def eat(self):
        if self.hungry:
            print("eee")
            self.hungry = False
        else:
            print("No,thanks!")
        # print("eat!")


class SongBird(Bird):
    def __init__(self):
        super(SongBird,self).__init__()
        self.sound = "squak"

    def sing(self):
        print (self.sound)


sb = SongBird()
sb.eat()

一个类继承多个超类的情况下,只需要使用一次super函数就可以

继承类构造方法使用

标签:类构造   一个   绑定   init   pre   type   div   hung   情况下   

原文地址:https://www.cnblogs.com/xiaozeng6/p/11105050.html

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