Python中类的多继承是如何实现的-,python 多继承

  Python中类的多继承是如何实现的?,python 多继承

  Python中类的继承、多级继承和多重继承,一个类可以通过继承获得其父类中的非私有属性和非私有方法。

  一、继承、重写、和调用重写的父类方法

  的继承语法是将要继承的父类名写在类名后面的括号()中。如果你想继承多个类,用逗号分隔它们。

  class Electrical(object):def _ _ init _ _(self,name):self . name=name def Watch _ movie(self):print(看电影!)def game(self): print(玩游戏!)def chat(self): print(和朋友聊天!)类Phone(电气,对象):def send_message(自身):print(发送消息!)def game(self): print(在手机里玩游戏!)def聊天(自己):超级(电话,自己)。chat() print(与任何人聊天!)p=Phone(VIVO)#继承父类print(p.name)的属性#继承父类p.watch_movie的方法()#子类自己实现的方法p.send_message()#重写父类p.game的方法()#首先继承父类的方法,扩展父类p.chat的方法的功能(

  VIVOWatch电影!发送消息!在手机上玩游戏!和朋友聊天!和任何人聊天!1.父类和非私有方法子类的非私有属性可以直接继承,子类可以直接使用。子类如果想调用父类的私有属性和私有方法,只能通过间接方法获取。

  2.子类可以实现父类没有的属性和方法,并且不会干扰继承的属性和方法。

  3.如果子类中存在与父类同名的方法,但方法中执行的内容不同,则子类可以覆盖父类方法。

  当子类实现与父类同名的方法时,称为覆盖父类方法。它直接在子类中定义与父类同名的方法,然后在方法中实现子类的业务逻辑,子类方法会覆盖与父类同名的方法。子类覆盖父类的方法,如果子类再次调用该方法,父类的方法将不会被执行。

  4.如果在子类重写父类的方法中,需要使用与父类同名的方法的函数来扩展父类的函数,那么子类可以在重写的方法中调用父类被覆盖的方法,使用super()来调用。

  二、类的多层继承

  类可以在多个层中被继承。

  class mi(phone):passm=mi( red mi )print(m . name)m . chat()运行结果:

  和朋友一起吃早餐!和任何人聊天!继续上面的类,我们定义的类Mi继承了Phone类,Phone类继承了Electrical类,这样就构成了多层继承。

  Mi类对象可以使用Phone或Electrical中的方法和属性。如果Phone重写了Electrical的方法,它将继承Phone中的方法。

  当Mi类对象调用属性和方法时,最好在它自己的内部寻找属性和方法。如果没有,它将在它的父类Phone中寻找属性和方法。如果没有,它将继续在Phone的父类Electrical中查找,直到到达Object类。最后如果没有找到,说明对象没有这个属性和方法,程序会报错。如果找到了,就返回找到的属性和方法,不再继续向上搜索。

  三、类的多继承

  类计算机(电气):def编码(自我):打印(编码什么的!)类华为(手机,电脑):passh=Huawei(华为)h . send _ message()h . coding()print(h . name)h . watch _ movie()运行结果:

  发送消息!编码什么的!华威看电影!同一个类可以继承多个类。比如上面的华为类,继承了Phone和Computer两个类。此时,可以使用两个父类的方法和属性子类,也可以使用两个父类的父类的属性和方法子类。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: