欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python_类的继承与方法重写

程序员文章站 2022-05-22 16:47:21
1.新建子类时,括号内要传入继承的父类名 2.super()方法:自动寻找当前类的父类,并调用父类的构造函数,初始化属性值 3.方法重写: ......

1.新建子类时,括号内要传入继承的父类名

2.super()方法:自动寻找当前类的父类,并调用父类的构造函数,初始化属性值

class cup:

    #构造函数,初始化属性值
    def __init__(self,capacity,color):
        self.capacity=capacity
        self.color=color

    def retain_water(self):
        print("杯子颜色:"+self.color+",杯子容量:"+self.capacity+",正在装水.")

    def keep_warm(self):
        print("杯子颜色:"+self.color+",杯子容量:"+self.capacity+",正在保温.")

class luminous_cup(cup):

    #构造函数,调用父类的构造函数初始化属性值
    def __init__(self,capacity,color):
        super().__init__(capacity,color)

    def glow(self):
        print("我正在发光...")


currentcup=luminous_cup('300ml','翠绿色')
currentcup.retain_water()
currentcup.glow()

 3.方法重写:

class cup:

    #构造函数,初始化属性值
    def __init__(self,capacity,color):
        self.capacity=capacity
        self.color=color

    def retain_water(self):
        print("杯子颜色:"+self.color+",杯子容量:"+self.capacity+",正在装水.")

    def keep_warm(self):
        print("杯子颜色:"+self.color+",杯子容量:"+self.capacity+",正在保温.")

class luminous_cup(cup):

    #构造函数,调用父类的构造函数初始化属性值
    def __init__(self,capacity,color):
        super().__init__(capacity,color)

    #方法重写
    def retain_water(self):
        print("杯子颜色:"+self.color+",杯子容量:"+self.capacity+",正在装水,正在发光...")

    def glow(self):
        print("我正在发光...")


currentcup=luminous_cup('300ml','翠绿色')
#调用子类中的retain_water()方法
currentcup.retain_water()
#调用父类中的retain_water()方法
super(luminous_cup,currentcup).retain_water()