zoukankan      html  css  js  c++  java
  • Python面向对象11.继承介绍

    继承的相关介绍

    一、引入

    生活中的继承,如下图

    继承,通俗的说就是不劳而获,不需要付出一下子什么都有了

    Python中也有继承这个功能,它能够实现一个类中可以使用另外一个类中的代码

    在开发较大的项目时,往往需要多个类实现,当我们定义一个新类时如果这个新的类的功能与之前某个类功能很类似,此时通过使用继承可以让新类不用写代码或者写很少的代码,就实现了想要的所有功能,这样一来编写的代码少了也就提高开发效率

    二、定义格式

    生活中,如果子女想要继承父辈的遗产,往往需要一定的证明素材,这样才有合法性;同理Python中想要表示出谁继承谁,也需要一定的格式来规定,这种方式就是在定义类的()中写上父类的名字

    如下示例

    class Animal:
        pass
    
    
    class Dog(Animal):  # 继承Animal
        pass
    
    
    class Cat(Animal):  # 继承Animal
        pass
    
    
    class BoSiCat(Cat):  # 继承Cat
        pass
    

      

     

    三、称呼

    为了更加清楚的标记处,谁继承了谁,我们用父类(基类)子类(派生类)来称呼它们

    • 父类:被继承的类
    • 子类:继承的类

    上图中的类Animal就是父类,Dog类是子类,BoSiCat类是子类,Cat既是子类(相对于Animal)又是父类(相对于BaSiCat

    四、示例

    # 父类
    class A(object):
        def __init__(self):
            self.num = 10
    
        def print_num(self):
            print(self.num + 10)
    
    
    # 子类
    class B(A):
        pass
    
    
    b = B()
    print(b.num)
    b.print_num()
    

      

     

    运行效果

    10
    20
    

      

     

    从上述的运行结果来看,虽然类B没有写代码,但是依然能够正确的执行,这足以说明类B继承了类A的功能

  • 相关阅读:
    【原】文本图片自适应高度小bug以及解决办法
    【原】iOS学习39网络之数据请求
    【原】iOS学习38网络之数据解析
    iOS数据持久化文件读写之偏好设置
    SQLite错误码
    iOS开发代码规范(通用)
    iOS学习37数据处理之CoreData
    iOS中的单例
    iOS学习36数据处理之SQLite数据库
    UIImage两种初始化的区别
  • 原文地址:https://www.cnblogs.com/dong4716138/p/15739437.html
Copyright © 2011-2022 走看看