Python是一个面向对象的语言,它有面向对象的三大特性,继承、封装、多态。那么Python中有重写吗,重写又是什么意思。下面这篇文章会对python重写进行详细的解析释义,一起看看吧。
一、重写是什么
面向对象的特性就是程序中的一切皆为对象,而类实例化出来的也是对象。子类可继承父类中的方法,而不需要重新编写相同的方法。但有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写。方法重写又称方法覆盖。
在python中,子类不使用父类的方法,而是将这个方法进行修改这就叫做重写。
二、python重写怎么做
python重写是子类对继承的父类属性或者是方法进行重新编写操作,下面以一个示例来讲解,如下所示:
class Person(object): def __init__(self, name, age): self.name = name self.age = age def print_info(self): print 'name: ', self.name print 'age: ', self.age class Student(Person): def __init__(self, name, age, school): Person.__init__(self, name, age) self.school = school def print_info(self): super(Student, self).print_info() print 'school: ', self.school s = Student(u'小明', 18, u'大学') s.print_info()
在上面这个示例之中,子类student继承了父类person的所有属性和方法。但是在子类中又多出一个父类没有的属性school,那这个时候如果还是使用父类的print_info方法就无法将school的值也输出。所有就需要使用super函数来将父类的方法和属性进行重写。
以上就是关于“Python之中有重写吗?Python重写是什么意思”的全部内容了,想要了解更多python的实用知识和代码示例可以在网页顶部栏目中找到python查看更多哦。