Python的面向对象4

  今天我们接着来聊聊继承!

  那什么是继承呢?

  新写的类是不必重新编写,只要从现有的类继承,就自动拥有了该类的所有功能,新类只需要编写现有类缺少的功能,可以复用已有的代码!

  

  python的继承的特点:

  

  继承的相关代码:

  

  子类中,一定要用 super(Student,self).__init__(name,gender) 去初始化父类,否则,继承自Person的Student将没有name和gender。

  函数super(Student,self)将返回当前类继承的父类,即Person,然后调用__init__()方法。

  因为self参数已在super()中传入,在__init__()中将隐式传递,不需要写出,也不能写的。如下图所示:

  

  可以看到,输出正确。

  

  而上面这段程序出错,是因为初始化父类是出错。

 

 

  

  在一条继承链上,一个实例可以看成它本身的类型,也可以看成它父类的类型。

  在继承链上,一个父类的实例不能是子类类型,因为子类比父类多一些属性和方法。

posted @ 2016-08-30 19:23  yue-ke  阅读(144)  评论(0编辑  收藏  举报