【Python】面向对象 - 继承 ① ( 继承概念 | 继承语法 | 单继承与多继承 | 代码示例 )





一、继承简介




1、继承概念


继承 是 面向对象 特性之一 , ( 封装 - 继承 - 多态 )

继承 可以 令一个类 从 另一个类 中 继承 该类的 属性 和 方法 ,

继承 属性 和 方法 的类被称为 " 子类 " , 被 继承 的类 称为 " 父类 " 或 " 基类 " ;


2、继承语法


继承语法 :

class 子类类名(父类类名):
	子类内容

父类类名 是 已经存在的 父类 或 基类 的名称 ;

子类类名 是 本次新创建的类类名 ;

该 子类 继承了 父类 所有的 成员属性 和 成员方法 ;


3、单继承与多继承


单继承 指的是 一个子类 继承 一个父类 ;

多继承 指的是 一个子类 继承 多个父类 ;


多继承语法 :

class 子类类名(父类类名1, 父类类名2, .... , 父类类名n):
	子类内容




二、代码示例




1、代码示例 - 单继承


父类 Animal 描述动物 , 只有 name 和 age 两个成员属性 , 在 构造函数 中初始化这两个成员 ;

class Animal:  
    def __init__(self, name, age):  
        self.name = name  
        self.age = age  
  
    def make_sound(self):  
        pass  

子类 Dog 在父类的基础上 , 增加了 color 属性 和 make_sound 函数 ;

class Dog(Animal):
    def __init__(self, name, age, color):
        super().__init__(name, age)
        self.color = color

    def make_sound(self):
        return "汪汪!"

创建 Dog 类实例对象 , 然后打印属性 , 调用成员方法 ;

dog = Dog("大黄", 2, "黑色")
print(dog.name)
print(dog.age)
print(dog.color)
print(dog.make_sound())

完整代码如下 :

"""
面向对象 代码示例
"""


class Animal:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def make_sound(self):
        pass


class Dog(Animal):
    def __init__(self, name, age, color):
        super().__init__(name, age)
        self.color = color

    def make_sound(self):
        return "汪汪!"


dog = Dog("大黄", 2, "黑色")
print(dog.name)
print(dog.age)
print(dog.color)
print(dog.make_sound())

执行结果 :

D:\001_Develop\022_Python\Python39\python.exe D:/002_Project/011_Python/HelloPython/Hello.py
大黄
2
黑色
汪汪!

Process finished with exit code 0

在这里插入图片描述


2、代码示例 - 多继承


定义两个父类 : Animal 和 Walk ;

class Animal:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def make_sound(self):
        pass


class Walk:
    def walk(self):
        print("走路")

定义子类 Dog , 继承上述 Animal 和 Walk 两个父类 ;

class Dog(Animal, Walk):
    def __init__(self, name, age, color):
        super().__init__(name, age)
        self.color = color

    def make_sound(self):
        return "汪汪!"

创建 Dog 类实例对象 , 并调用 Animal 和 Walk 中的成员属性 和 成员方法 ;

dog = Dog("大黄", 2, "黑色")
print(dog.name)
print(dog.age)
print(dog.color)
print(dog.make_sound())
dog.walk()

最终执行结果为 :

大黄
2
黑色
汪汪!
走路

完整代码示例 :

"""
面向对象 代码示例
"""


class Animal:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def make_sound(self):
        pass


class Walk:
    def walk(self):
        print("走路")


class Dog(Animal, Walk):
    def __init__(self, name, age, color):
        super().__init__(name, age)
        self.color = color

    def make_sound(self):
        return "汪汪!"


dog = Dog("大黄", 2, "黑色")
print(dog.name)
print(dog.age)
print(dog.color)
print(dog.make_sound())
dog.walk()

执行结果 :

D:\001_Develop\022_Python\Python39\python.exe D:/002_Project/011_Python/HelloPython/Hello.py
大黄
2
黑色
汪汪!
走路

Process finished with exit code 0

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/han1202012/article/details/131626995