一、继承与派生

  1、继承的定义:继承是一种创建新类的方式,即在类中提取共同的部分创建出一个类,这样的类称为父类,也可称为基类和超类,新建的类称为派生类或子类。

  2、单继承:就相当于子类继承了一个父类。

  3、多继承:就相当于子类继承了多个父类。

  4、查看类继承了哪个父类的方式:子类名.__bases__

  5、在python3中子类如果没有指定父类的话它默认会指定一个object类,object是所有子类的父类,即所有派生类的基类。但凡继承了object类的子类的子类的

    子类也会继承object,这样的类统称为新式类。(python3的类都是新式类)

  6、在python2中子类默认是没有object类的,因此该子类的子类是都没有继承object的,但凡没有继承object的类统称为经典类。

  eg:class Father:pass
    class Son(Father): pass
      print(Father.__bases__)
      print(Son.__bases__)

  7、继承是一种什么是什么的关系,他的作用就是减少代码冗余。

    eg:

    

二、组合与重用性。

  1、组合的定义:组合指的是在类中以另一个类的对象作为数据属性,称之为类的组合。

  2、类的组合的作用:和继承一样都是为了减少代码的冗余。

  3、类的组合是一种什么有什么的关系,相当于建立了一种类与组合类之间的关系。

    eg:

      三、接口

  1、什么是接口?

    接口只是定义了一些方法,而没有去实现,多用于程序设计时,只是设计需要有什么样的功能,但是并没有实现任何功能,这些功能需要被另一个类(B)继承后,

  由 类B去实现其中的某个功能或全部功能。,

python基础16 ----面向对象程序设计二的更多相关文章

  1. python基础之面向对象(二)

    面向对象对程序设计OOD 找对象---->找类(归纳对象相同的特征与技能,还有没和对象独有的特征)面向对象编程OOP 先定义类---->实例化出对象查看成绩,交作业 在python3中,所 ...

  2. python基础之面向对象(二)(封装、继承、多态)

    一.封装 (1)封装是面向对象的一大特点 (2)面向对象编程的第一步--将属性和方法封装到一个抽象的类当中 (3)外界使用类创建对象,然后让对象调用方法 (4)对象方法的细节都被封装在类的内部 1.案 ...

  3. Python基础之面向对象进阶二

    一.__getattribute__ 我们一看见getattribute,就想起来前面学的getattr,好了,我们先回顾一下getattr的用法吧! class foo: def __init__( ...

  4. 二十. Python基础(20)--面向对象的基础

    二十. Python基础(20)--面向对象的基础 1 ● 类/对象/实例化 类:具有相同属性.和方法的一类人/事/物 对象(实例): 具体的某一个人/事/物 实例化: 用类创建对象的过程→类名(参数 ...

  5. (转)Python成长之路【第九篇】:Python基础之面向对象

    一.三大编程范式 正本清源一:有人说,函数式编程就是用函数编程-->错误1 编程范式即编程的方法论,标识一种编程风格 大家学习了基本的Python语法后,大家就可以写Python代码了,然后每个 ...

  6. Python 基础 四 面向对象杂谈

    Python 基础  四  面向对象杂谈 一.isinstance(obj,cls) 与issubcalss(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls ...

  7. 自学Python之路-Python基础+模块+面向对象+函数

    自学Python之路-Python基础+模块+面向对象+函数 自学Python之路[第一回]:初识Python    1.1 自学Python1.1-简介    1.2 自学Python1.2-环境的 ...

  8. python基础,函数,面向对象,模块练习

    ---恢复内容开始--- python基础,函数,面向对象,模块练习 1,简述python中基本数据类型中表示False的数据有哪些? #  [] {} () None 0 2,位和字节的关系? # ...

  9. 十六. Python基础(16)--内置函数-2

    十六. Python基础(16)--内置函数-2 1 ● 内置函数format() Convert a value to a "formatted" representation. ...

随机推荐

  1. php 位运算符的实际应用(权限判断)

    关键代码: define("READ", 1); define("WRITE", 2); define("DELETE", 4); defi ...

  2. 【引用】python 静态函数 类函数 实例函数

    1.关于定义类的一些奇特之处  今天在Python中定义一个类,很奇怪,不需要事先声明它的成员变量吗?暂时不知,先记录下来: class Account(object):    "一个简单的 ...

  3. linux生成指定大小的文件(转)

    # dd if=/dev/zero of=50M.file bs=1M count=50在当前目录下生成一个50M的文件 虚拟块设备文件更通用的名称是硬盘镜像文件(Hard Disk Image),但 ...

  4. (五)Thymeleaf标准表达式之——[7->8]条件表达式& 默认表达式

    2.7 条件表达式 模板名称:condition-express.html <1>a ? b:c  (if then:else) <2>a?c (if else) 条件表达式( ...

  5. 转 RabbitMQ

    转自:https://blog.thankbabe.com/2017/08/03/rabbitmq-demo/?from=cnblogs 介绍 RabbitMQ是一个由erlang开发的基于AMQP( ...

  6. C++类型转换运算符 static_cast,dynamic_cast,reinterpret_cast,const_cast

    类型转换是一种让程序猿可以临时或永久性改变编译器对对象的解释机制.可改变对象解释方式的运算符称为类型转换运算符. 为何须要进行类型转换 通常为了实现使用不同环境的个人和厂商编写的模块可以相互调用和协作 ...

  7. python常见面试题(二)

    1. 到底什么是Python?你可以在回答中与其他技术进行对比(也鼓励这样做). 下面是一些关键点: Python是一种解释型语言.这就是说,与C语言和C的衍生语言不同,Python代码在运行之前不需 ...

  8. 【Hadoop基础教程】3、Hadoop之伪分布式环境搭建(转)

    伪分布式模式即单节点集群模式,所有的守护进程都运行在同一台机器上.这种模式下增加了代码调试功能,可以查看内存.HDFS文件系统的输入/输出,以及与其他守护进程交互.以hadoop用户远程登录K-Mas ...

  9. JavaScript的join()

    JavaScript join() 方法 JavaScript Array 对象 定义和用法 join() 方法用于把数组中的所有元素放入一个字符串. 元素是通过指定的分隔符进行分隔的. 语法 arr ...

  10. lua学习笔记(四)

      表达式   算术操作符     +(加法) -(减法) *(乘法) /(除法) ^(指数) %(取模) -(负号)     x%1的结果是x的小数部分,x-x%1是整数部分   关系操作符     ...