python 子类调用父类成员的方法

1.直接写类名调用: parent_class.parent_attribute(self)

 1 class Animal():
 2 
 3     def __init__(self, name):
 4         self.name = name
 5 
 6     def say_name(self):
 7         print(self.name)
 8 
 9 
10 class Dog(Animal):
11 
12     def __init__(self, name):
13         Animal.__init__(self, name)
14 
15     def say_name(self):
16         Animal.say_name(self)
17 
18 
19 dog = Dog('小虎')
20 dog.say_name()   # 打印'小虎'

扩展:实例对象和类对象调用实例函数。

 1 class Animal():
 2 
 3     def __init__(self, name):
 4         self.name = name
 5 
 6     def say_name(self):
 7         print(self.name)
 8 
 9 animal = Animal('nada')
10 animal.say_name()         # 实例对象调用实例函数,输出'nada'
11 Animal.say_name(animal)   # 类对象调用实例函数,需要传入一个对象实例作为参数,输出'nada'

2.用 super(type, obj).method(arg)方法调用:super(child_class, child_object).parent_attribute(arg)   【不需要写self】

 1 class Animal(object):
 2 
 3     def __init__(self, name):
 4         super(Animal, self).__init__()
 5         self.name = name
 6 
 7     def say_name(self):
 8         print(self.name)
 9 
10 
11 class Dog(Animal):
12 
13     def __init__(self, name):
14         super(Dog, self).__init__(name)
15 
16     def say_name(self):
17         super(Dog, self).say_name()
18 
19 
20 dog = Dog('小虎')
21 dog.say_name()    # 输出'小虎'

 

转载于:https://www.cnblogs.com/gundan/p/8143296.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值