python对象如何继承
发布时间:2025-02-09 17:45:31
在python中实现对象的继承只需在创建类时在括号中写入要继承的类名即可。

1. 继承的定义
classPerson(object):#定义父类
defrun(self):#父类中的方法
print("personisruning")
classChinese(Person):#定义子类,继承Person类
defwalk(self):#在子类中定义自己的方法
print('personiswalking')
c=Chinese()
c.run()#调用继承Person的方法
c.walk()#调用自己的方法
#输出
personistruning
personiswalking2. 继承构造函数
继承结构方法:
1.经典写法: 父类名称.__init__(self,参数1,参数2...)2. 新型写法:super(子类,self).__init__(参数1,参数2...)
classPerson(object):
def__init__(self,name,age):
self.name=name
self.age=age
defrun(self):
print("personisruning")
classChinese(Person):
def__init__(self,name,age,language):
Person.__init__(self,name,age)#可以写成super(Chinese,self).__init__(name,age)继承父类init
self.language=language#定义子类属性
defwalk(self):
print('personiswalking')
c=Chinese('xiaoming',26,'Chinese')3. 子类对父类方法的重写
由于子类本身的优先级高于父类,当我们定义子类与父类同名函数时,我们可以重写父类方法
classPerson(object):
def__init__(self,name,age):
self.name=name
self.age=age
defrun(self):
print("personisruning")
classChinese(Person):
def__init__(self,name,age,language):
Person.__init__(self,name,age)
self.language=language
print(self.name,self.age,self.language)
defrun(self):#子类重写法
print('%sisalsoruningchinese'%self.name)
c=Chinese('xiaoming',26,'Chinese')
c.run()
#输出
xiaoming26chinese
xiaomingisalsoruningchinese推荐课程:Python面对象(Corey Schafer)
下一篇 python真那么流行吗
