Python - 语法 - class BB(AA): - 类 - 有继承

有继承的类 + 有重写/修改/替换类

class Car():
    """汽车"""
    def __init__(self, energy, distance):
        self.energy = energy
        self.distance = distance
        self.windows = "close"

    def go(self):   # 加油门
        self.energy = self.energy - 1
        self.distance = self.distance + 1
        return

    def add(self):    # 加油
        self.energy = self.energy + 1

    def open_windows(self):  # 车窗
        self.windows = "open"

class ElectricCar(Car):     # 必须在括号内指定父类的名称
    """电动汽车"""
    def __init__(self, energy, distance, battery_size):      # 接受创建Car实例所需的信息
        """初始化父类的属性"""
        super().__init__(energy, distance)     # 帮助Python将父类和子类关联起来
        self.battery_size = battery_size     # 给子类定义新属性

    def go(self):   # 加电门
        self.battery_size = self.battery_size - 1
        self.distance = self.distance + 1
        return

    def add(self):    # 充电
        self.battery_size = self.battery_size + 1

open_windows()不变
go()、add() 被重新写
要让派生类调用基类的__init__()方法进行必要的初始化,需要在派生类使用super函数调用基类的__init__()方法

super()调用父类(超类)的一个方法

super().add(x)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值