Python 继承父类的属性和方法

Python 继承父类的属性和方法

Python 继承父类的属性和方法

在面向对象的编程中,继承是一种重要的概念,可以让子类复用父类的属性和方法,同时还可以添加自己的属性和方法。在 Python 中,继承是通过定义类时在类名后面的括号中指定父类来实现的。本文将介绍如何在 Python 中继承父类的属性和方法。

定义父类

首先,我们定义一个简单的父类 Person,包含 nameage 两个属性,以及一个 say_hi 方法用来打印问候语。

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

    def say_hi(self):
        print(f"Hello, my name is {self.name} and I am {self.age} years old.")

定义子类

接下来,我们定义一个子类 Student,继承自父类 Person,并添加一个新的属性 student_id 和一个新的方法 study

class Student(Person):
    def __init__(self, name, age, student_id):
        super().__init__(name, age)
        self.student_id = student_id

    def study(self, subject):
        print(f"{self.name} is studying {subject}.")

在子类的 __init__ 方法中,我们使用 super().__init__(name, age) 来调用父类的构造方法,并将 nameage 的初始化工作交给父类处理。然后,我们再添加 student_id 的初始化。

创建对象并调用方法

现在,我们可以创建一个 Student 对象,并调用继承自父类的属性和方法,以及子类独有的属性和方法。

# 创建一个 Student 对象
student = Student("Alice", 20, "2021001")

# 调用继承自父类的属性和方法
print(student.name)  # 输出: Alice
print(student.age)   # 输出: 20
student.say_hi()     # 输出: Hello, my name is Alice and I am 20 years old.

# 调用子类独有的属性和方法
print(student.student_id)  # 输出: 2021001
student.study("Math")      # 输出: Alice is studying Math.

在上面的示例中,我们创建了一个 Student 对象 student,并通过 student.namestudent.age 来访问继承自父类的属性,通过 student.say_hi() 来调用继承自父类的方法。同时,我们也可以通过 student.student_id 访问子类独有的属性,通过 student.study("Math") 调用子类独有的方法。

总结

通过继承父类的属性和方法,我们可以让子类在不重复编写代码的情况下,直接引用父类的属性和方法,提高了代码的重用性和可维护性。同时,子类还可以添加自己的属性和方法,扩展了类的功能。在实际开发中,合理使用继承可以让代码更加简洁和可读。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程