从本章开始,我们进入面向对象程序设计(OOP)的说明,一个设计中更重要更有用的概念
因为本章主要是介绍,所以代码示例基本没有,主要都是一些概念的说明
本章重点内容:
1、面向对象程序设计与类
2、类和实例、类和模块
3、运算符重载
4、多态和类
接下来,针对以上内容进行详细的说明
1、面向对象程序设计与类
OOP是一个在编程语言中被广泛应用的概念,最显著的代表就是JAVA,Python也是支持OOP的,关于OOP,百度会了解更多内容,在这里不再赘述
类是在Python中实现一种新的对象,并支持继承的代码结构和部件,是OOP的重要工具
在Python中,类的创建使用了一条新的语句:class语句
为什么使用类:有很多优势,用一句话概括就是‘代码重用可定制’, 这样就会极大的减少代码的重复,提高开发的效率
2、类和实例、类和模块
类和实例是两种不同的对象类型,但是我们往往分不清两者的概念,因为他们两者在类树的关系中,看起来很相似,也都是作为另一种命名空间,这一点听起来也有点像模块,但是也有不同
类与模块的不同
1)、类对应的是语句(class),而模块对应的是文件
2)、内存中一个特定模块只有一个实例(就是导入模块),但是对类而言,只要有需要创建多少实例都可以
类与实例的关系
1)类是一种产生实例的工厂
2)每个class语句会生成一个新的类对象,每次类调用时,就会生成一个新的实例对象,实例自动链接到创建他们的类
3、运算符重载
类对象中会有很多属性,有些属性的名称很特别,名称开头和结尾都带有双下划线,这些属性都可以在类树中被继承
当能够支持这些特别名称操作的实例出现在对应的运算符旁时,Python就会自动运行他们
因为这些特殊的操作可以通过类进行继承,在继承中,可以通过不同的实例进行修改,以符合实际的操作,就是对运算符进行重载
简单的来说,就是可以根据具体实际的需要,进行重新的定义,这是类的灵活性
4、多态和类
多态是指运算的意义取决于运算的对象,这是类最重要的特性之一
简单来说就是根据不同的对象有不同的操作,那你会问,类为什么会这样?这个就会涉及到上面的话题,就是运算符重载,因为类支持运算符重载,可以针对不同的对象有不同的类或者类的继承,在继承中,对不用的类中的特定方法进行运算符重载,这样就好表现为不同的对象,不同的操作和行为,有”多种状态“
以上就是本章的讲解,因为都是一些概念,所以文字偏多,下章就会进入具体的代码操作说明,下章见!
《Python学习手册 第五版》 每章时间规划及完成进度:
2019.11.25-2019.12.01 第01章,已完成:《Python学习手册 第五版》 -第1章 问答环节
2019.12.02-2019.12.08 第02章,已完成:《Python学习手册 第五版》 -第2章 Python如何运行程序
2019.12.09-2019.12.15 第03章,已完成:《Python学习手册 第五版》 -第3章 你应如何运行Python程序
2019.12.16-2019.12.22 第04章,已完成:《Python学习手册 第五版》 -第4章 介绍Python对象类型
2019.12.23-2019.12.29 第05章,已完成:《Python学习手册 第五版》 -第5章 数值类型
2019.12.30-2020.01.05 第06章,已完成:《Python学习手册 第五版》 -第6章 动态类型
2020.01.06-2020.01.12 第07章,已完成:《Python学习手册 第五版》 -第7章 字符串基础
2020.01.12-2020.01.19 第08章,已完成:《Python学习手册 第五版》 -第8章 列表与字典
2020.01.20-2020.01.26 第09章,已完成:《Python学习手册 第五版》 -第9章 元组、文件与其他核心类型
2020.01.27-2020.02.02 第10章,已完成:《Python学习手册 第五版》 -第10章 Python语句简介
2020.02.03-2020.02.09 第11章,已完成:《Python学习手册 第五版》 -第11章 赋值、表达式和打印
2020.02.10-2020.02.16 第12章,已完成:《Python学习手册 第五版》 -第12章 if测试和语法规则
2020.02.17-2020.02.23 第13章,已完成:《Python学习手册 第五版》 -第13章 while循环和for循环
2020.02.24-2020.03.01 第14章,已完成:《Python学习手册 第五版》 -第14章 迭代和推导
2020.03.02-2020.03.08 第15章,已完成:《Python学习手册 第五版》 -第15章 文档
2020.03.09-2020.03.15 第16章,已完成:《Python学习手册 第五版》 -第16章 函数基础
2020.03.16-2020.03.22 第17章,已完成:《Python学习手册 第五版》 -第17章 作用域
2020.03.23-2020.03.29 第18章,已完成:《Python学习手册 第五版》 -第18章 参数
2020.03.30-2020.04.05 第19章,已完成:《Python学习手册 第五版》 -第19章 函数的高级话题
2020.04.06-2020.04.12 第20章,已完成:《Python学习手册 第五版》 -第20章 推导和生成
2020.04.13-2020.04.19 第21章,已完成:《Python学习手册 第五版》 -第21章 基准测试
2020.04.20-2020.04.26 第22章,已完成 :《Python学习手册 第五版》 -第22章 模块:宏伟蓝图
2020.04.27-2020.05.03 第23章,已完成:《Python学习手册 第五版》 -第23章 模块代码编写基础
2020.05.04-2020.05.10 第24章,已完成:《Python学习手册 第五版》 -第24章 模块包
2020.05.11-2020.05.17 第25章,已完成:《Python学习手册 第五版》 -第25章 高级模块话题
2020.05.18-2020.05.24 第26章,已完成
2020.05.25-2020.05.31 第27章,未完成
以下链接,可以供你了解这个学习笔记的所有章节最新进度