第九章 类(二)继承和导入类

发布时间:2024年01月19日

目录

9.3 继承

9.3.1 子类的__init__方法

9.3.2 重写父类的方法

9.4 导入类

9.4.1 导入一个类

9.4.2 导入所有类


9.3 继承

? ? ? ? 如果要编写的类是一个类的特殊版本(有共同信息),可使用继承。当一个类继承另一个类是,前者拥有后者的所有属性和方法。前者称为子类,后者称为父类(超类)

9.3.1 子类的__init__方法

? ? ? ? 假如我现在需要一个类来输出狗狗Bob的衣服颜色、款式等等,重新定义一个类吗?不用,用继承即可。

? ? ? ? 子类继承父类,父类必须于子类在同一文件中。子类中的__init__方法中只需要用super()函数即可调用父类。(具体如代码所示)

# class Dog:...  # 隐藏上部分,省的太多在这里不好查看
    
class Clothe(Dog):
    def __init__(self, name, age):
        super().__init__(name, age)

    def describe_clothe(self):
        print(f"The dog's name is {self.name}, the dog's age is {self.age}")
        print(f"The dog clothe is {self.clothe_color}")

9.3.2 重写父类的方法

? ? ? ? 想要在子类张修改父类的方法,只要在子类中用父类中名字相同的方法即可。例:之前狗狗的体重是20kg,然后它胖了,变成25kg.

class Clothe(Dog):
    def __init__(self, name, age):
        super().__init__(name, age)

    def describe_clothe(self):
        print(f"The dog's name is {self.name}, the dog's age is {self.age}")
        print(f"The dog clothe is {self.clothe_color}")

    def size_weight(self):    # 修改部分
        self.size = "25kg"
        print(f"my dog size is {self.size}")

9.4 导入类

? ? ? ? 导入类与导入函数相似。

9.4.1 导入一个类

? ? ? ? ?from 类所在文件名 import 类名。例如:在dog.py文件中有类Dog,Clothes,我想在my_dog.py中导入Dog类。即:from dog import Dog。

9.4.2 导入所有类

? ? ? ? from 文件名 import *

本人新手,若有错误,欢迎指正;若有疑问,欢迎讨论。若文章对你有用,点个小赞鼓励一下,谢谢,一起加油吧!

文章来源:https://blog.csdn.net/weixin_51100340/article/details/135658265
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。