Python面向对象04 /封装.多态.鸭子类型.类的约束.super 目录 Python面向对象04 /封装.多态.鸭子类型.类的约束.super 1. 封装 2. 多态 3. 鸭子类型 4. 类的约束 5. super的深度剖析 1. 封装 把一堆东西(代码,数据)放到一个地方(空间),并且可以使用,比如:函数,类 2. 多态 一个事物可以呈现多种形态 , 例如:水可以支持固态.液态.气态 Python默认支持多态(Java是强定义语言,Python是弱定义语言) Python一个变量可以支…
框架图 理解面向对象 面向对象是相对面向过程而言 面向对象和面向过程都是一种思想 面向过程强调的是功能行为 面向对象将功能封装进对象,强调具备了功能的对象. 面向对象是基于面向过程的. 面向对象的特点是一种符合人们思考习惯的思想可以将复杂的事情简单化将程序员从执行者转换成了指挥者完成需求时: 先要去找具有所需的功能的对象来用. 如果该对象不存在,那么创建一个具有所需功能的对象. 这样简化开发并提高复用. 面向对象开发,设计,特征开发的过程:其实就是不断的创建对象,使用对象,指挥对象做事情.设计的…
面向对象的核心是对象,世间万物都可以看作对象,任何一个对象都可以通过一系列属性和行为来描述,可以包含任意数量和类型的数据或操作.类是用来描述具有相同属性和方法的所有对象的集合.类通常是抽象化的概念,而对象表示具体的事物. 要想熟悉并灵活运用类和对象解决项目中的实际问题,首先需要透彻了解面向对象的三大特性:封装.继承和多态. 本系列是总结python的设计模式,所以本篇的内容为基于python的.与设计模式强相关的对象特性,如无特殊说明默认版本为python3,默认新式类. 封装        …
析构: def __del__(self): print("del..run...") r1 = Role("xx") del r1 结果打印del..run... 析构函数在实例被销毁的时候执行__del__ 做程序的收尾工作名字r1被删除后,垃圾回收机制会将对象清空就执行了__del__函数 继承1 对父类的功能进行扩展而无需重写 * 多级继承,一般三层父--子--孙--..* 多重继承 class Teacher(SchoolMember,School)用的不…
######装饰器######装饰器的概念 - 装饰器的实现是函数里面嵌套函数;- 装饰器的本质是一个函数, 它可以让其他函数在不需要做任何代码改动的前提下增加额外的功能;- 装饰器需要传递一个函数, 返回值也是一个函数对象.######面向对象#######一.面向对象的基本概念 面向过程和面向对象,是两种不同的编程方式 对比面向过程的特点,可以更好的了解什么是面向对象  过程和函数(都是对一段功能的代码进行封装) 过程:是早期的一个编程概念  过程类似于函数,只能执行,但是没有返回值 函数:…
一.继承,包括单继承和多继承 对于面向对象的继承来说,其实就是将多个类共有的方法提取到父类中,子类 仅需继承父类而不必一一实现每个方法. 实例: #coding=utf-8 class Person(object): def  __init__(self,name, age): self.name=name self.age = age def get_age(self): return self.age def get_name(self): return self.name def set_…
一.封装 封装是隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读取和修改的访问级别. 封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成"类",其中数据和函数都是类的成员. 1.简单理解封装 顾名思义,封装属性就是把已有的属性封装到一个类里面去: class Person(): def __init__(self, name, age, sex): self.name = name self.age =…
(一)面向对象是什么? 面向对象是一种编程思想 (二)为什么要用面向对象? 1.结构清晰 2.易于维护 3.方便扩展 (三)new一个对象是什么过程? 实例化构造函数创建对象的过程就是将类实例化的过程实例化的过程就是执行构造函数的过程构造函数的执行一定是在创建类的第一步完成 (四)访问修饰符有哪些? pubilc        公共的,可以在任何位置使用 private      私有的,只有内部才可以使用 internal     默认的,同一个命名空间可以使用 protected  被保护的…
Python面向对象中的继承.多态和封装 一.面向对象的三大特性 封装:把很多数据封装到⼀个对象中,把固定功能的代码封装到⼀个代码块, 函数,对象, 打包成模块. 这都属于封装思想. 继承:⼦类可以⾃动拥有⽗类中除了私有属性外的其他所有内容. 说⽩了, ⼉⼦可以随便⽤爹的东⻄. 多态: 同⼀个对象, 多种形态.在Python中处处是多态,因为在Python中一个变量可以是多种形态. 二.封装 封装,顾名思义,就是将某些东西给封装起来,以后想要使用的时候再去调用. 所以,在使用面向对象的封装特性时…
Python 入门 之 面向对象的三大特性(封装 / 继承 / 多态) 1.面向对象的三大特性: (1)继承 ​ 继承是一种创建新类的方式,在Python中,新建的类可以继承一个或多个父类,父类又可以称为基类或超类,新建的类称为派生类或子类. ​ 在Python中实现继承非常简单,在声明类的时候,在类名后面添加一个小括号,就可以完成继承关系.单纯的从代码的层面上来看当两个类具有相同的功能或者特征的时候就可以使用继承.提取一个父类,这个父类中编写者两个类相同的部分,然后两个类分别去继承这个类就可以…