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

  那什么是继承呢?

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

  

  python的继承的特点:

  

  继承的相关代码:

  

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

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

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

  

  可以看到,输出正确。

  

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

  

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

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

最新文章

  1. Http压测工具wrk使用指南
  2. ios滑动手势全屏(这段代码实现了下一级控制器滑到上一级控制器)
  3. win2008远程桌面会话数增加
  4. Mysql DDL与DML
  5. Android之Tab类总结
  6. bower install和cnpm install
  7. Struts2.0 去掉action后缀名
  8. 隐藏 php apache 的版本号
  9. BZOJ 1051: [HAOI2006]受欢迎的牛 缩点
  10. 防止横竖屏时,iphone自动缩放的一段js代码
  11. Android SQLite的使用1(非原创)
  12. js获取浏览器窗口的大小
  13. event system
  14. debug经验汇总
  15. nginx 安装和配置
  16. atom编辑器启动后文件不能编辑的解决办法
  17. 通过数据分析告诉你北京Python开发的现状
  18. 调用wait的SIGCHLD信号处理函数
  19. Linux:软件包安装
  20. appium+python自动化测试

热门文章

  1. iotop,pt-ioprofile : mysql IO负载高的来源定位
  2. wireshark抓包图解 TCP三次握手/四次挥手详解
  3. 分享功能使用的UIPopoverController在iOS9 过期,替换为popoverPresentationController
  4. 集合(Collection,set,list,map)
  5. c# 枚举基础有[flags]和没有的的区别
  6. [置顶] html学习笔记,锚点,超链接,table布局,表头,h,sub,blockquote,ul,li,ol.dl,加入收藏,打印,弹出窗口
  7. Linux Bash终端支持中文显示
  8. Linux常用系统调用
  9. c#简体繁体转换
  10. php中实现精确设置session过期时间的方法