学习Python的第十二节课(继承和多态)
前言
写个前言吧!这应该是学习Python的最后一节课了,虽然还没有学懂,但是也不再是当初的小白了,课程的最后老师问了我们一个问题也就是我们的最后一节课的作业“《python程序设计》这门课程对你带来哪些帮助?”关于这个回答我就直接贴图吧!纯个人感受。
一、继承和多态
1、继承
在继承关系中,预先设计好的类称为父类/基类,从父类中派生出来的类称为子类/派生类。Python中所有的类都继承自object。派生类可以继承父类的公有成员,但是不能继承其私有成员。Python支持单继承和多继承,注意如果父类中有相同的方法名,而在子类中使用时没有指定父类名,那么Python解释器将按照从左向右按顺序进行搜索。
类的继承格式:
class 子类名(基类名1,基类名2,…):
类体
继承关系中,基类对象和子类对象访问成员方法和数据的顺序如下所示。如果在子类中使用父类的实例变量,那么一般在子类的构造函数中应该先调用父类的构造函数,方式有两种:
继承顺序:
def __init__(self):
父类.__init__(self,[参数列表])
或者
def __init__(self):
super(子类,self).__init__([参数列表])
2、多态
多态指的是基类的同一个方法在不同派生类对象中具有不同的表现和行为。派生类继承了基类行为和属性之后,还会增加某些特定的行为和属性,同时还可能会对继承来的某些行为方法进行一定的改变,这都是多态的表现形式。
例如,python中大多数运算符可以作用于多种不同类型的操作数,并且对于不同
类型的操作数往往有不同的表现,这本身就是多态。
a=1+2 操作符作用于整型变量,两数相加,结果为3
s='1'+'2'操作符作用于字符串类型变量,进行拼接,结果为'12'
运算符重载
重载:指函数名相同,但函数的参数个数或类型不同。调用的时候根据函数的
参数来区别不同的函数。
运算符重载:对已有的运算符重新进行定义,赋予其另一种功能,以适应不同
的数据类型。