zoukankan      html  css  js  c++  java
  • Python关于多继承

    大部分面向对象的编程语言(除了C++)都只支持单继承,而不支持多继承,为什么呢?因为多继承不仅增加编程复杂度,而且容易导致莫名其妙的错误。

    Python虽然语法上支持多继承,但是却不推荐使用多继承,而是推荐使用单继承,这样可以保证编程思路更清晰,也可以避免不必要的麻烦。

    当以一个子类有多个直接父类时,该子类会继承得到所有父类的方法,但是如果其中有多个父类包含同名方法会发生什么?此时排在前面的父类中的方法会“遮蔽”后面父类中的方法。

    栗子如下:

     1 #coding=utf-8
     2 class Item:
     3     def info(self):
     4         print("Item中的方法",'这是一个商品')
     5         
     6 class Product:
     7     def info(self):
     8         print('Product中的方法','这是一个能赚钱的商品')
     9         
    10 class Computer(Item,Product):
    11     pass
    12     
    13 c = Computer()
    14 c.info()

    控制台打印如下:

    解释:控制台打印的是Item类中的方法,所以说子类所继承的父类中的方法,如果存在同名,前面的会“遮蔽”后面的即前面的直接父类优先级高于后面的。

  • 相关阅读:
    jedis jedispool Redistemplate
    开箱一个docker
    JPA分页查询与条件分页查询
    基于token与基于服务器的身份认证
    uni-app第三方登陆-微信
    main.js中封装全局登录函数
    idea搭建可运行Servlet的Web项目[maven]
    什么是servlet?
    简单了解request与response
    颓废的三天
  • 原文地址:https://www.cnblogs.com/tizer/p/11142475.html
Copyright © 2011-2022 走看看