继承简介
继承是指通过在创建类时提供另一个类(称为父类)的名称,来获取父类的属性与方法。继承最明显的作用就是节约代码量,不需要重复定义已经存在的属性与方法。但是深入思考就会发现,复用只是继承的附带作用,继承最有意义的一点,是将不同的类联系了起来,让不同的类之间能够有一定的共性。当我们在面对不同类的时候,如果能按照他们的共性按图索骥,那么会轻松不少。例如,如果我们已经考取了c1驾照,当我们看到半挂卡车的时候,即使没有开过,也可以立即理解其操作方式,从而节省了学习时间。
私有与重写
在python中,继承的内容可以是属性也可以是方法。有时候我们不想让一个类的某些属性或者方法暴露在外(即通过【对象名.属性】或者【对象名.方法名()】的方式查看或调用),或者不希望被子类继承,则可以用私有或者重写的方式来在某种程度上达到我们的目标。私有属性在命名时以两个下划线开头,私有属性或方法不可以在直接访问(也不可以在子类中直接访问),而是必须要采用一些被额外定义的公共方法访问。举个例子:
点击查看代码
class Student(object):
def __init__(self):
self.sid = ''
self.gender = ''
self.__university = '清华大学'
class HighSchoolStudent(Student):
pass
点击查看代码
class Student(object):
def __init__(self):
self.sid = ''
self.gender = ''
self.__university = '清华大学'
def TargetSchool(self):
print(f'我将努力学习,争取{self.__university}的offer!')
class HighSchoolStudent(Student):
pass
点击查看代码
class Programmer(object):
def __init__(self):
self.gender = 'male'
language = 'Python'
def coding(self):
print(f'写{self.language}代码')
点击查看代码
class HighSchoolStudent(Student,Programmer):
pass