Python类的单继承、多继承与super的使用详解

Python类的单继承、多继承与super的使用详解内容学习自网络:1.单继承2.多继承及super使用详解一、Python类的单继承使用详解继承性的好处:①减少了代码的冗余,提供了代码的复用性②提高了程序的扩展性③(类与类之间产生了联系)为多态的使用提供了前提二、类继承性的格式:单继承和多继承#python2中无继承父类,称之为经典类,python3中,默认继承object类...
摘要由CSDN通过智能技术生成

Python类的单继承、多继承与super的使用详解

内容学习自网络:
1.单继承
2.多继承及super使用详解

一、Python类的单继承使用详解

继承性的好处:
①减少了代码的冗余,提供了代码的复用性
②提高了程序的扩展性
③(类与类之间产生了联系)为多态的使用提供了前提

二、类继承性的格式:单继承和多继承

#python2中无继承父类,称之为经典类,python3中,默认继承object类,称之为新式类
#注意:python3中,(object)可以显示出来,不写也不会报错。

python中继承的格式为:

class 子类A(父类1,父类2):
子类体

#注意:区分单继承和多继承主要看子类继承类中的类个数,单个为单继承,多个为多继承。

三、子类继承父类后有哪些特性?(以单继承为例)

总结:

1.子类在继承父类时,默认继承了父类的 init()方法,如果子类没有重写__init__方法,则在创建对象时默认调用父类的该方法。但如果重写了__init__ 时,实例化子类时,就不会调用父类已经定义的 init
2.因为子类默认继承了父类的构造方法,所以子类可以不需要重写__init
_()方法。如果子类重写了自己的__init__()方法,那么子类该方法的参数个数要大于等于父类的个数(要包含父类的参数)。否则,报错。因为python中一个类中只能有一个init方法,不支持构造方法的重载。
3.注意:可以用super().的形式调用父类的构造方法,但这个时候参数不用写self了,注意跟直接用父类名.形式调用的区别。
格式:
super().init(name,age) #此时不用添加self
Person.init(self,name) #此时需要添加self,切记这里Parent后不需要跟()
4.子类继承了父类所有的属性,包扣私有属性,只是私有属性不能直接去调用,而是要通过get/set方法进行调用。
5.子类继承了父类的所有方法,同样 私有方法不能外部直接调用。
6.同样如果父类还有父类,那么子类也会继承父类的父类所有方法和属性(注意私有属性和 方法同样访问不了)

代码示例:


#父类Person
class Person(object):
    country = "china"
    __sex = "male"
    def __init__(self,name ,age):
        self.nam
  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值