云计算百科
云计算领域专业知识百科平台

一文讲清楚Python类继承

python中允许我们定义继承另一个类的所有方法和属性的类。

父类是继承的类,也称为基类。

子类是从另一个类继承的类,也称为派生类。

创建父类

创建一个名为 Person 的类,其中包含 firstname 和 lastname 属性以及 printname 方法:

class Person:
def __init__(self, fname, lname):
self.firstname = fname
self.lastname = lname

def printname(self):
print(self.firstname, self.lastname)

# 使用 Person 来创建对象,然后执行 printname 方法:

x = Person("Bill", "Gates")
x.printname()

创建子类

创建一个名为 Student 的类,它将从 Person 类继承属性和方法:

class Student(Person):
pass

为 Student 类添加 __init__() 函数:

class Student(Person):
def __init__(self, fname, lname):
# 添加属性等

当添加 __init__() 函数时,子类将不再继承父的 __init__() 函数。

子的 __init__() 函数会覆盖对父的 __init__() 函数的继承。

如需保持父的 __init__() 函数的继承,需要添加对父的 __init__() 函数的调用

class Student(Person):
def __init__(self, fname, lname):
Person.__init__(self, fname, lname)

如果想使子类从其父类继承所有方法和属性,用super() 函数,如下:

class Student(Person):
def __init__(self, fname, lname, year):
super().__init__(fname, lname)
self.graduationyear = year

x = Student("Elon", "Musk", 2026)

使用super() 函数使子类Student 继承了Person类的所有方法和属性,同时Student 新增了一个参数year

ps:如果在子类中添加一个与父类中的函数同名的方法,则将覆盖父方法的继承

赞(0)
未经允许不得转载:网硕互联帮助中心 » 一文讲清楚Python类继承
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!