python多重继承 同名函数_Python继承中有两个基类方法重名的问题。在线求解答~~~...

classBaseClass1:def__init__(self):self.name1='BaseClass1_Name1'self.name='BaseClass1_Name'print('BaseCalss1:Constructorcalled')defgetname(self):print('BaseCalss1:getnamec...

class BaseClass1:

def __init__(self):

self.name1 = 'BaseClass1_Name1'

self.name = 'BaseClass1_Name'

print('BaseCalss1: Constructor called')

def getname(self):

print('BaseCalss1: getname called, name equal ' + self.name)

class BaseClass2:

def __init__(self):

self.name2 = 'BaseClass2_Name2'

self.name = 'BaseClass2_Name'

print('BaseClass2: Constructor called')

def getname(self):

print('BaseCalss2: getname called, name equal ' + self.name)

class DerivedClass2(BaseClass1, BaseClass2):

def __init__(self):

BaseClass1.__init__(self)

BaseClass2.__init__(self)

print('DerivedClass: Constructor called')

if __name__ == '__main__':

class3 = DerivedClass2()

class3.getname()

这个是运行结果:

BaseCalss1: Constructor called

BaseClass2: Constructor called

DerivedClass: Constructor called

BaseCalss1: getname called, name equal BaseClass2_Name

最后一个运行结果为什么不是

BaseCalss1: getname called, name equal BaseClass1_Name

不是调用了第一的基类的方法和他的self.name属性了吗?为什么输出属性却是第二个基类的self.name?

展开

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值