Python 多重继承

 

 1、多重继承?

    在Python语言中,我们可以通过1个子类去继承多个不同的父类,从而,可以调用不同父类中公有的属性与方法。

 2、多重继承的定义格式:

   class  子类名字(父类1,父类2,...父类n):

      类的主体代码      

 

  格式分析:

     (1)以class关键字开头

     (2)子类名字

     (3)一对小括号

     (4)将要继承的父类名字,各父类之间通过逗号分隔,父类必须已经定义

     (5)一个冒号

     (6)类中的代码

 

   其实,与继承的语法格相似,只是小括中可以写入多个不同的父类名字。

 

 2、 例子:

   #========================

   #定义了一个描述手枪的类Gun

   #========================

    class Gun : 

        x = 0;

        def Gshoot( self ):  #定义了方法Gshoot

          self.x = self.x + 1

 

        def __Boom( self ):    #定义了私有方法__Boom

          pow = 1000

          return pow

           

 

   #========================

   #定义了一个描述散弹枪的类ShotGun

   #========================

    class ShotGun :

        x = 0

        y = 0

        __BulletX = 0

        def SGshoot( self ):  #定义了方法SGshoot

          self.x = self.x + 1;    

          self.y = self.y + 1;   

 

 

   #========================

   #定义了一个描述角色类Role,并继承了手枪类与散弹枪类

   #========================

    class Role( ShotGun,Gun ): 

        rx = 10 #角色的位置X

        ry = 10 #角色的位置Y

        

 

 

    r1 = Role()    #定义了r1对象

 

    r1.rx = 10    #调用Role类自身的属性RX并设置为10

    r1.ry = 20    #调用Role类自身的属性RY并设置为20

     

     r1.Gshoot()    #调用了父类Gun中公有方法Gshoot

     r1.SGshoot()  #调用了父类ShotGun中公有方法SGshoot

 

    r1.__BulletX    #错误,不可以调用父类ShotGun中的私有属性__BulletX

    r1.__Boom()    #错误,不可以调用父类Gun中的私有方法__Boom

 

=======================================================================

非常好,现在,我们已经掌握了Python语言中的(多重继承)但是,如何去运行用它呢?

所以,我们就需要通过下方的链接,进入到Python语言的代码训练中,然后,通过实践去加深对该知识点的理解与运用。

>>>下载训练环境与使用说明(使用真实的开发环境,结合游戏闯关进行编程训练)