zoukankan      html  css  js  c++  java
  • 继承

    什么是继承

    继承是为了解决多个类中代码重用的一种方式,一般来说,可能有很多的类,都存在相同的方法,那么我们就可以将共有的属性,提取出来存放到一个类中作为一个父类,然后后续可以创建新类,直接继承这个父类;继承之后子类就能调用父类的非私有属性或方法

    别名:新建的类可称为子类或派生类,父类又可称为基类或超类,子类会遗传父类的属性

    为什么要有类?为什么要有继承?继承解决了什么?

    1.类能够抽象出对象之间共有的代码,让代码更加简洁
    2.而继承能够抽象出类之间共有的代码,让代码更加简洁

    python2和python3的新式类和经典类

    继承了object的叫做新式类,没有继承的叫做经典类;新式类中默认集成了一些常用的开发类或方法,能够让开发者更加方便地使用内置代码

    python支持多继承

    优点:子类能够同时遗传多个父类的属性,最大限度地重用代码
    缺点:大部分面向对象的编程语言(除了C++)都只支持单继承,而不支持多继承,为什么呢?因为多继承不仅增加编程复杂度,而且容易导致莫名其妙的错误。
    Python虽然语法上支持多继承,但是却不推荐使用多继承,而是推荐使用单继承,这样可以保证编程思路更清晰,也可以避免不必要的麻烦。
    缺点举例:https://www.cnblogs.com/tizer/p/11142475.html

    调用父类函数属性的两种方法

    1. 什么时候用:在父类和子类存在同名方法时,如果想调用父类的时候

    (1)父类名.方法名(self)  # 使用父类名称调用父类的方法一定一加self

    (2)super().方法名()  # super就代表父类的内存地址,()表示运行new方法,调用上一级父类,上一级父类无该方法,就继续往上找,如果是多继承,优先调用最左边的那个父类

  • 相关阅读:
    WCF之ABC
    一次性为自定义实体类的数据填充
    在HttpHandlers中使用Session
    ASP.NET 2.0防止同一用户同时登陆
    Winson.Framework 1.5发布!
    SqlPager分页控件的使用!
    ExtJS 学习心得(一)
    [原创]Discuz!NT1.1高亮代码插件1.5稳定版!
    Winson.Framework 1.0发布!
    一个不错的WEB打印解决方案!
  • 原文地址:https://www.cnblogs.com/zhongzhouyun/p/14967553.html
Copyright © 2011-2022 走看看