优草派  >   Python

Python之中有重写吗?Python重写是什么意思

罗西汉            来源:优草派

Python是一个面向对象的语言,它有面向对象的三大特性,继承、封装、多态。那么Python中有重写吗,重写又是什么意思。下面这篇文章会对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查看更多哦。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行