继承介绍:
继承就是让类和类之间产生父子关系,子类可以拥有父类的静态属性和方法。
python中的继承分为单继承和多继承
python的单继承:
先定义一个人的类;自我介绍,姓名,年龄,体重
class Person:
# 定义基本属性
name = ''
age = 0
# 定义私有属性,私有属性在类外部无法直接进行访问
__weight = 0
# 构造方法
def __init__(self,name,age,weight):
self.name = name
self.age = age
self.weight = weight
def msg(self):
return '{}说:我{}岁'.format(self.name,self.age)
# 继承
class LiMing(Person):
gerden = ''
def __init__(self,name,age,gerden,weight):
#调用父类的构造函数
Person.__init__(self,name,age,weight)
self.gerden = gerden
# 重写父类msg方法
def msg(self):
return '{}说:我{}岁,性别{},体重{}KG'.format(self.name,self.age,self.gerden,self.weight)
liming = LiMing('李明',18,'男',56)
print(liming.msg())
#执行结果:李明说:我18岁,性别男,体重56KG
python的多继承:
class Introduction:#自我介绍类
def __init__(self,name,age):
self.name = name
self.age = age
def msg(self):
print('我是{},今年{}岁'.format(self.name,self.age))
class Active:#行动类
def __init__(self,song):
self.song = song
def Listen(self):
print('我喜欢听{}'.format(self.song))
class XiaoMing(Introduction,Active):#小明类继承以上两类
def __init__(self,name,age,song):
Introduction.__init__(self,name,age)
Active.__init__(self,song)
test = XiaoMing('小明',25,'七里香')# 实现小明类调用两个父类的方法
test.msg()
test.Listen()
#我是小明,今年25岁
#我喜欢听<<七里香>>
方法重写
父类的方法
class Parent: # 定义父类
def myMethod(self):
print ('调用父类方法')
class Child(Parent): # 定义子类
def myMethod(self):
print ('调用子类方法')
c = Child() # 子类实例
c.myMethod() # 子类调用重写方法
super(Child,c).myMethod() #用子类对象调用父类已被覆盖的方法
super()方法
class A:
def add(self, x):
y = x+1
print(y)
class B(A):
def add(self, x):
super().add(x)
b = B()
b.add(2) # 3
类的专有方法:
- init : 构造函数,在生成对象时调用
- del : 析构函数,释放对象时使用
- repr : 打印,转换
- setitem : 按照索引赋值
- getitem: 按照索引获取值
- len: 获得长度
- cmp: 比较运算
- call: 函数调用
- add: 加运算
- sub: 减运算
- mul: 乘运算
- truediv: 除运算
- mod: 求余运算
- pow: 乘方
来源:CSDN
作者:+all+
链接:https://blog.csdn.net/qq_44256371/article/details/103702280