zoukankan      html  css  js  c++  java
  • 【Python】继承

    子类的方法__init__()

    创建子类的实例时,Python首先需要完成的任务是给父类所有属性赋值,为此,子类的方法__init__()需要父类施以援手。

    class Car():
        '''模拟汽车'''
    
        def __init__(self, name, model, year):
            '''初始化汽车的属性'''
            self.name = name
            self.model = model
            self.year = year
        def get_describe_car(self):
            long_name = str(self.year) + ' ' + self.name +' ' + self.model
            return(long_name.title())
    class ElectricCar(Car):
        '''模拟电动汽车'''
        def __int__(self,make,model,year):
            '''初始化父类的属性'''
            super().__int__(make,model,year)
    
    my_tesla = ElectricCar('tesla','model s',2016)
    print(my_tesla.get_describe_car())

    子类ElectricCar定义子类时,必须在括号内指定父类的名称,方法__init__()接受创建Car实例所需的信息

    父类也称为超类(superclass),名称因此而得名

    给子类方法

    class Car():
        '''模拟汽车'''
    
        def __init__(self, name, model, year):
            '''初始化汽车的属性'''
            self.name = name
            self.model = model
            self.year = year
        def get_describe_car(self):
            long_name = str(self.year) + ' ' + self.name +' ' + self.model
            return(long_name.title())
    class ElectricCar(Car):
        '''模拟电动汽车'''
        def __int__(self,make,model,year):
            '''初始化父类的属性
            再初始化电动汽车特有的属性
            '''
            super().__int__(make,model,year)
        def get_describe_year(self):
            '''打印一条描述电瓶容量的消息'''
            print("This car was made in "+str(self.year))
    my_tesla = ElectricCar('tesla','model s',2016)
    print(my_tesla.get_describe_car())
    my_tesla.get_describe_year()

    方法get_describe_year()是给子类定义的方法

  • 相关阅读:
    37 反转一个3位整数
    372 在O(1)时间复杂度删除链表节点
    174 删除链表中倒数第n个节点
    13 字符串查找
    4.Single Number(出现一次的数)
    7.斐波那契数列
    6.旋转数组的最小数字
    5.用两个栈实现队列
    垃圾收集器与内存分配策略---确定对象的存亡状态
    Java内存区域与内存溢出异常---对象的内存布局和对象的访问定位
  • 原文地址:https://www.cnblogs.com/OliverQin/p/7887680.html
Copyright © 2011-2022 走看看