- 1、本文档共97页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象编程思想
编程思想:面向过程,面向对象
例子:学生报到系统
学生报到
学校登记
学生缴费
学校收费
学生选择班级
班级录入信息
分析:实现这样业务逻辑。将系统拆分成每一个步骤进行操作。
将每一个功能,封装成函数。
逐一去调用函数即可。
分析:
报到系统是如何实现的??是将一个完整的业务逻辑,拆分一个一个的步骤,然后在满足学需求的时候,去逐一调函一个函数。逐一实现每一个过程。想这样的编程方式,面向过程的编程方式。动词罗列,动词的集合体。
发现:
程序的最终的目的,用于去模拟出现实中的业务逻辑。现实生活中的业务逻辑,所有的动作。都是由一个主体发出的。但是在使用面向过程的时候,没有主体的存在。使用程序就无法去完成模拟出现实中的业务逻辑。
导致:
如果在使用程序去完成模拟出现实生活中的业务逻辑。程序的世界,也需要一个主体的存在。并且所有的工作,都需要由这个主体去发出。将这样的编程思想称为面向对象(现实生活中的主体)
模拟现实世界和程序世界
面向过程:只存在着动作,没有一个主体的存在。无法完整的去模拟出现实的世界
面向对象:是完整的去模拟出现实世界中的业务逻辑。在显示世界中的一个主体,如果使用面向对象的方式来描述,将该实体(人,物,事)映射到编程世界中,作为编程世界中的一个主体(对象)。
问题:使用面向对象思路去完成学生报到的系统
分析现实的业务逻辑中,完成该动作,需要几个实体
三个实体,学生,学校,班级
需要在程序中去建造三个实体
为每一个实体去添加一些功能
学生:报到,缴费,选班
学校:登记,收费
班级:录入信息
在完成系统的,只需要在适当的时候,让一个实体去执行不同的功能。
面向对象的语法
基本概念
对象:在现实中看的见,摸的着的东西,映射到程序中都是对象。对象是数据和附加在数据上操作的集合体。
对象怎么来的??通过 实例化 类 得到的
类:对一些具有相同特征的事务的总称,抽象化的描述。本身不是一个具体的对象。是多个具体对象的描述。规定结构的。
昆虫是什么??是对具有相同特征虫子的描述(翅膀,触角,多条腿)。
实例化:将一个类变成一个具体的对象的过程。
设计图纸:规定房子的一些结构。
对象:根据设计图纸,建造出来的房子。
从图纸到房子的过程:称为实例化。
不参与建造过程,不参与实例化的过程。
基本语法
声明类
使用class关键字
Class 类名
{
}
类中包含两个部分:成员属性和成员方法
成员属性
数据,使用变量保存数据,
需要使用修饰符来描述变量,public。公共的。
成员方法
操作,就是一个动作,一个功能。就是一个函数。
使用关键字function 方法名(){}
为方法添加修饰符,public
实例化
完成实例化的操作。
使用一个关键字 new 类名
注意:
在使用对象的时候,需要将对象保存在一个变量中,对象也是一个数据
类名是不区分大小的
每一个实例化,生成的都是一个不同的对象。
如何为每一个对象添加不同的属性??
将每一个的姓名都叫了刘备
每一个学生是一个对象,每一个对象的名称都是不一样的。
使用对象操作符 –,访问成员(成员属性和成员方法)
对象-成员
访问对象
$对象1 – 成员
$对象2 - 成员
访问成员属性
得到一个对象$stu1,为该对象中name的属性(变量)赋值。需要找到当前对象的name属性。使用$stu-name ,直接赋值。
注意:
1、操作其中一个对象的时候,对其他的对象没有任何的影响
2、对象的在内存上的分配
访问成员方法
使用-
方法就是函数,调用一个函数
函数名(),
调用方法:方法名();
Baodao()方法在类或在对象身上。
先找到对象
$stu-baodao();
该方法时属于每一个对象的
当前使用实例化的三个对象,访问成员方法的时候,执行的都是同一个操作
伪变量
每一个不同的对象,去访问baodao(),方法的时候,需要知道当前对象的名字。
直接使用了$name变量,出现了一个变量未定义的错误。
在方法(函数)中,变量的作用域。在当的局部变量中,没有一个$name的变量。
使用global修饰的变量,是将全局的变量的引入覆盖局部的同名变量。
调用函数,就可以取传递参数,哪一个对象方法了该方法,就将该对象传递这个方法里面
对象访问成员属性的方式,获取当前对象的name。
$this:这个,访问当前方法的这个对象。系统内置的。是一个局部的变量。该局部的变量有个特点。当某个对象去访问方法的时候,php会自动确定是哪个对象在方法,然后将该对象,赋值给$this的局部变量
哪一个对象访问的$this表示的就是这样对象。
构造方法 __construct
是php内置的方法,当对象在实例化的(在new的时候),会自动去调用,在该方法中完成初始化的操作。
在实例化对象的时候,
您可能关注的文档
最近下载
- 减震器说明书.doc
- 饮料浓浆 团体标准.docx VIP
- 必威体育精装版中小学教师高级职称晋升初中语文学科讲课答辩真题汇编(附答案详解).pdf
- 电解质饮料 团体标准.docx VIP
- 东风雪铁龙C5汽车使用手册用户说明书pdf电子版下载.pdf
- CVP监测危重患者液体管理.ppt VIP
- 六年级数学分数混合运算专项练习题.pdf VIP
- 小学二年级上册道德与法制 道法 备课 学历案.docx VIP
- 基于“双高”背景下高职院校一流师资队伍建设的思考-来源:现代职业教育(高职高专)(第2020030期)-山西教育教辅传媒集团有限责任公司.pdf VIP
- 第二届全国数字化机房安装技能竞赛(电气设备安装工赛项)考试题库资料-下(多选、判断题汇总).pdf
文档评论(0)