当前位置: 移动技术网 > IT编程>脚本编程>Python > 19.面向对象(继承)

19.面向对象(继承)

2019年10月04日  | 移动技术网IT编程  | 我要评论

霹雳赛车游戏下载,深圳九龙男科医院,任天堂wii

面向对象三大特性:封装、继承、多态

继承的概念:

  在定义类时,可以从已有类当中提取想要的内容

  被继承的类称为父类、基类、超类,新定义的类称为子类、派生类

  注意:如果派生类中的属性与基类属性重名,那么派生类的属性会覆盖掉基类的属性。包括初始化函数。

    派生类在初始化函数中需要继承和修改初始化过程,使用’类名+__init__(arg)’来实现继承和私有特性,也可以使用super()函数。

继承的优点:

  1.节省代码

  2.规范代码

继承的作用

  面向对象的编程带来的主要好处之一是代码的重用,实现这种重用的方法之一是通过继承机制。继承完全可以理解成类之间的类型和子类型关系。

 

初识继承:

  只执行本类的方法

  只执行父类的方法

  既执行父类的方法又执行本类的方法

    父类名.类名(参数)

    super().方法名(参数(self参数自动传值))

  新式类:凡是继承object类都是新式类

    python3x所有的类都为新式类,因为python3x中的类都默认继承object

  经典类:不继承 object类都是经典类

    python2x(既有新式类,又有经典类)所有的类都默认不继承object类,都默认为经典类,可以用object继承为新式类

继承的分类:

  1.单继承

    新式类和经典类查询顺序一样

  2.多继承

    新式类:遵循广度优先

      一条路走到倒数第二级,判断,如果其他路能一条路走到低,则返回走另一条路,如果不能,则走到终点

    经典类:遵循深度优先

      一条路走到低

广度优先的图解如下:

代码如下:

# class a:
#     pass
#     # def func(self):
#     #     print('in a')
# 
# class b(a):
#     pass
#     # def func(self):
#     #     print('in b')
# 
# class c(a):
#     # pass
#     def func(self):
#         print('in c')
# 
# class d(b):
#     pass
#     # def func(self):
#     #     print('in d')
# 
# class e(c):
#     # pass
#     def func(self):
#         print('in e')
# 
# class f(d,e):
#     pass
#     # def func(self):
#     #     print('in f')
# 
# f1 = f()
# f1.func()

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网