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:如果在子类中添加一个与父类中的函数同名的方法,则将覆盖父方法的继承
网硕互联帮助中心



评论前必须登录!
注册