python中继承

python中继承
继承:是将基类中的属性(不包括私有属性)“遗传”给派生类,使得派生类中也拥有基类的属性。
基类:也可以叫父类,是被继承的类。
派生类:也可以叫子类,由它去继承父类,从而获取到父类的属性。
继承语法:class 子类名(父类名(可以有多个,用逗号隔开)):
好处:继承可以共用其他类中的一些属性。可以大大增强代码的复用性,减少代码量。也可以实现多态。
在这里插入图片描述
此时,Child就是子类,Father就是父类。
在python中是支持多继承的,就是一个子类可以继承多个父类。这样子类就同时拥有所有父类的属性。
对应于python的新式类而言,不管我们有没有手动继承某个类,python都会自动继承object这个类,这个是除它自己以外,所有类的父类。
对于python面向对象的三大特征:封装,继承,多态。
可能有人认为python中没有多态,可我认为python中处处都体现了多态,因为objec是所有类的父类,所有类在向上转型到object。
在这里插入图片描述
在这里插入图片描述
我们可以看到在Child类中我们并没有定义那些魔术方法,可是在类中具有这些方法,这些方法来自于object,所有类都继承object,则所有类也具有了object中的属性。
我们可以使用__mor__ 这个方法来获取到类的所有父类包括子类自己,及父类的继承顺序,关于类的继承顺序是使用了c3算法。
重写:对于子类继承了父类的各种属性,可是对于子类而言,并不是父类所有的属性都是与其一致,子类可能在同一个属性上有不同内容,此时,我们就要抛弃父类的某个属性,创造一个属于子类的属性。
当我们在子类中定义了与父类相同的属性时,就完成了重写,这个重写仅仅时对于子类而言的,对于父类并没有影响。
在这里插入图片描述
在这里插入图片描述
关于重写,如果我们在子类中创造一个与父类同名却对于参数不同的时候,会不会像在Java中一样呢,答案是:不一样。
在这里插入图片描述
在这里插入图片描述
这里就会报错,在python中只有同名的方法,并不会因为参数不同,而不会被重写。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值