软件测试|Python 基础之面向对象(二)
面向对象的编程思想
面向对象是一种编程思想,用这种思想为指导设计的程序,把数据和对数据的操作封装在一起组成类,通过类来创建对象,通过对象之间的交互来实现程序的功能。
面向对象编程是一种编程方式,此编程方式的落地需要使用 “类” 和 “对象” 来实现,所以,面向对象编程其实就是对 “类” 和 “对象” 的使用
面向过程编程
面向过程即流程
在以上所学习的编程中,我们都是在按照固定的流程解决问题,制定一个结果,在奔向结果的过程中编写代码,以达到我们所需要的结果
需要例举出每一步流程 随着流程的深入 结果慢慢浮现
面向对象编程
对象即容器,数据与功能的结合体 (python 中一切皆对象)
类似于开放式游戏,制定出游戏人物的(对象)
该人物未来会如何发展,全看用户如何控制,和我们程序员没有关系
上述两种编程思想没有优劣之分 需要结合实际需求而定如果需求是注册 登录 人脸识别肯定面向过程更合适如果需求是游戏人物肯定是面向对象更合适实际编程两种思想是彼此交融的 只不过占比不同
面向对象
类与对象
对象:
数据与功能的结合体
是由类创建出来的一个具体存在,可以直接使用;由哪一个类创建出来的对象,该对象就具有在那一个类中定义的属性和方法
类:
多个对象相同数据和功能的结合体
是对一群具有相同特征或者行为的事物的一个统称,不能直接使用;特征被称为属性;行为被称为方法
创建类与对象
现实中一般是先有对象再有类程序中如果想要产生对象 必须要先定义出类
1、语法结构
2、定义与调用
需求:
大学选课系统
查看类的名称空间:
在面向对象中,类和对象访问数据或者功能,可以统一采用句点符
类的调用:
类加括号就会产生对象,并且每调用一次就会产生一个全新的对象
变量名 obj 接收类名加括号之后的返回值(结果)
数据和功能可称统称为属性:数据>>>属性名功能>>>方法
对象独有数据
在上述使用类产生对象时,我们可以看出产生的对象并没有自己特有的数据,针对如何给对象手动添加独有数据,python 提供了多种方式,其中前 4 种方式主要为推导第五种方式而来,我们只需简单了解即可,在日后我们重点使用的是第五种方式
第一种:
通过__ dict __ 加中括号的方式
第二种:
将对象独有的数据提前封装成函数,在后续添加的时候,通过传参的方式进行添加
第三种:
将封装数据的函数放在类的内部,只有相同类的对象才有资格使用
第四种:
将封装独有功能的函数名替换成__ init __ 这种方式,在我们给对象添加独有功能时,可自动触发
第五种:
封装独有数据的函数体的第一个参数位置修改为 self
在使用类产生对象时直接在类的括号内填入独有数据
这种方式是我们日后使用类产生独有数据对象的主要方式
对象独有功能
上述学习了如何给相同类对象添加独有数据的方式,下面我们要学习如何给对象添加独有功能
思考:
1、直接将功能函数体代码定义在全局名称空间种,那么该功能函数就不对象独有的功能
2、将功能函数体代码放在类中,但是类中的函数体功能,只要是此类产生的对象都可调用
解决方法:
定义在类中的功能,默认就是给类产生的对象使用的,只要是此类产生的对象都可以使用
需要在功能函数形参数内填入 self,之后只需要用类名’点‘函数名的方式,函数参数内填入调用对象名,就可直接使用该功能
补充知识
对象数据值修改
评论