Python类的继承(简单继承、重写、拓展)

1.子类可以直接调用继承的父类中的属性;
2.子类可以重写父类的方法;
3.子类可以拓展一些父类没有的方法;

Python类的简单继承

 1 #父类的简单继承
 2 #定义一个Father
 3 class  Father():
 4     def __init__(self,name,age):
 5         self.name=name
 6         self.age=age
 7 
 8     def skill(self): #技能
 9         print(self.name+'今年'+str(self.age)+'岁,','会FQ,会打洞!')
10 
11     def salary(self,salary): #薪资
12         print(self.name+'的薪资大概是{}'.format(salary))
13 #实例化再调用
14 father=Father('爸比',40)
15 father.skill()
16 father.salary('1000')
17 
18 #直接传参调用
19 # Father('爸比',40).skill()
20 # Father('爸比',40).salary('1000')
21 
22 
23 #写一个子类boy来简单继承父类的属性和方法
24 #子类直接调用父类的所有属性和方法
25 class Boy(Father):
26     pass
27 
28 
29 #实例化再调用
30 boy=Boy('小哥哥',16)
31 boy.skill()
32 boy.salary('需要零花钱')
33 
34 #直接传参调用
35 # Boy('小哥哥',16).skill()
36 # Boy('小哥哥',16).salary('需要零花钱')

Python类继承中的重写

#注意:类的重写和拓展都是针对类方法而言的
#类的重写
#重写是对继承过来的父类方法进行重写
class Boy(Father):
    def skill(self): #技能
        print(self.name+'今年'+str(self.age)+'岁,','会撒野,会撩妹!')

#创建实例进行调用
Boy('小哥哥',18).skill()
Boy('小哥哥',18).salary('需要零花钱')

Python类继承中的拓展

class  Father():
    def __init__(self,name,age):
        self.name=name
        self.age=age

    def skill(self): #技能
        print(self.name+'今年'+str(self.age)+'岁,','会FQ,会打洞!')

    def salary(self,salary): #薪资
        print(self.name+'的私房钱大概是:{}'.format(salary))

#拓展
#子类具有父类没有的新特性,这时使用拓展
class Boy(Father):
    def skill(self): #技能
        print(self.name+'今年'+str(self.age)+'岁,','会撒野,会撩妹!')

    def  new_skill(self,code):
        print('人生苦短,',self.name+'用{}'.format(code))
#创建子类实例进行调用
Boy('小哥哥',20).skill()
Boy('小哥哥',20).salary('100')
Boy('小哥哥',20).new_skill('python')

原文地址:https://www.cnblogs.com/ITester520/p/12060594.html