PHP面向对象到底是啥?十分钟通俗易懂图文教程
PHP面向对象的基本概念
(一)、面向对象的基本概念
1、什么是对象
l 面向对象英文是Object Oriented,拆开来就是
-面向(Oriented)
-对象( Object )
概念:什么是对象
l 世间万物皆对象
n 一切可见之物
u 一个老人,一台笔记本
u 一个桌子
u 一个球员
u 一个女主播
n 一切不可见之物也可以是对象
u 一个空气里的细菌
u 一个抽象的概念
l 抽象,顾名思义,就是抽掉了具体形象的东西。如:人,就可以说是一个相对抽象的概念,因为一个具体的人有性别、年龄、身高、相貌、社会关系等具体特征,但抽象的“人”就是不包含这些具体特征的一个概念,因此说它是抽象的;而具体的人的概念应该是张三、李四等。 因此说,抽象概念一般是指的每一类事物,而不是某一个事物。
2、对象的组成
l 对象组成包含两部分
n 对象的组成元素
u 是对象的数据模型,用于描述对象的数据
u 又被称为对象的属性,或者对象的成员变量
n 对象的行为
u 是对象的行为模型,用于描述对象它能做什么事情
u 又被称为对象的方法
3、对象的特点
l 每一个对象都是独一无二
n 比如说张三就是张三,李四就是李四,你家的桌子就是你家的不是别人家的,而且你家卧室的桌子不是客厅的桌子,这些都不能混为一谈
l 对象是一个特定的事物,它的职能就是完成特定的功能
n 比如桌子,它就是一张桌子,它就是为了满足你吃饭的时候的需求,你可以把饭菜盛饭到上面,这样吃起来就方便
n 再比如球员,它的职能就是传球,运球,投篮,扣篮,这些就是他们要做的事情
l 对象它是可以重复使用的
n 比如球员詹姆斯,他打完一场篮球后,还可以继续打,不是说打完一场就结束了,不能再打了
n 再比如,吃饭的桌子,你吃完了,下次再吃的时候,还可以继续使用这张桌子,所以它是可以被重复使用
n 再比如,一辆车子,它从北京开到到广州,不是说它开到广州就报废了,而是可以往返很多次
4、什么是面向对象
l 面向就是指在编程的时候,一直把对象放在心中
n 比如你面向墙壁,你一直看到的就是墙壁,
n 比如老师讲课,它面向是谁,是学生,所以老师上课的时候要一直面对的是学生
n 面向对象,就是编程的时候,心里一直面向着对象
l 面向对象编程,指的就是在编程的时候,把一切数据模型转换成对象的结构进行存储,
n 实际上就是编程的时候,我们把所有的数据结构,转换成属性和方法这种对象的形式进行存储,我们把这种方式就叫做面向对象编程
5、为什么要使用面向对象
对象的描述方式更加贴合真实世界,更加方便我们理解大型项目的业务逻辑
n 我们早期的时候是面向过程编程,就是每天讲的都是代码的组织结构,但是有了对象的描述方式后,我们还可以说,我写的就是一个一个的对象,然后他们之间有各种互动
n 在程序设计的过程当中,这种面向对象的开发方式拉近了代码和真实世界的距离
6、面向对象的实质
l 做任何事情我们都需要观察事物的本质,那么面向对象的实质是
n 把生活中要解决的问题,都通过对象的方式进行存储,什么是对象方式的存储,就是把数据结构存储为对象的属性和方法
u 比如我们要做一个家居软件,里面所有的家居我们都可以用对象的属性和方法进行表示出来,比如它的大小,颜色,尺寸 等等
方法有哪些呢,比如有的家居是可以折叠的,这个折叠就是它的方法
u 再比如一个球员,它的属性有什么,身高,年龄,团队,肤色等等,那方法呢,就比如运球,传球,投篮,扣篮等这些基本的技能就是球员的方法
l 对象和对象之间的互动,就是通过方法的调用来完成,这个有点抽象,后面我们会通过实例进行详细的剖析
n 举例
u 比如我从教室门口,走了大概10步,来到了讲台中间,紧接着我看向张三,然后问了一个问题,“你好,请问你叫什么名字”,最后张三回复我:“你好,我叫张三”
这个图里,对象分别是老师,学生,首先是老师调用了他自身的方法,方法的顺序依次是 走,看,问,紧接着调用了张三对象的回复方法
7、面向对象的基本思路
l 第一步:识别对象
-任何实体都可以称为对象
l 第二步:识别对象的属性
n 对象里面存储的数据都是属性
n 对于不同的业务我们要关注的属性是有所不同的
u 比如上面的场景中,我们要用面向对象的方式把它还原,那么关注的属性就是名字,身份,方法就是3个,走,看,问
u 比如女主播和球员都是人,但是因为业务不同,所以我们关注的属性和方法也会不同,比如女主播,我们更关注的是它的艺名,还有唱歌,球员我们更关注的是他是哪个球队的,以及他球技
l 第三步:识别对象的行为
n 比如说对象自己数据的改变都是行为
n 对象和外部之间的交互
8、面向对象的基本原则
l 对象内部是高内聚的
n 只包含一项特定的职能(职能是可大可小)
u 比如说球员,他只负责打球,女主播只负责唱歌,虽然他们还可以做其他事情,但是因为业务不同,所以职能不同,然后其他的职能就没有包含进来
n 所有对象相关的内容都封装在对象内部
l 对象外部它是低耦合的
n 外部的世界只能看见对象的部分属性,看不到全部的
n 外部世界只能看见对象的部分行为,看不到全部的
u 这个高内聚低耦合不关是对象的一些基本原则,它也是我们整个编程当中的一个重要原则,特别是低耦合更重要一些,为什么这么说呢,因为一旦做到了低耦合,这样的话,对象之间的依赖关系会变得非常小,随之带来的好处就是,它的可维护性更高了,可扩展性也加强了,比如做一个游戏软件,这个球员的对象可以被多个游戏使用,这样在开发新游戏的时候,可以直接拿来使用,这样的话,复用性也增强了
u 高内聚的好处就是,你该有的都有了,尽量写全一点就不会出现缺胳膊少腿的
u 高内聚低耦合它不仅仅只是我们设计对象的时候的基本原则,它也是我们编程的一个重要设计原则
以上是PHP面向对象到底是啥?十分钟通俗易懂图文教程的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

本教程演示了如何使用PHP有效地处理XML文档。 XML(可扩展的标记语言)是一种用于人类可读性和机器解析的多功能文本标记语言。它通常用于数据存储

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

静态绑定(static::)在PHP中实现晚期静态绑定(LSB),允许在静态上下文中引用调用类而非定义类。1)解析过程在运行时进行,2)在继承关系中向上查找调用类,3)可能带来性能开销。

字符串是由字符组成的序列,包括字母、数字和符号。本教程将学习如何使用不同的方法在PHP中计算给定字符串中元音的数量。英语中的元音是a、e、i、o、u,它们可以是大写或小写。 什么是元音? 元音是代表特定语音的字母字符。英语中共有五个元音,包括大写和小写: a, e, i, o, u 示例 1 输入:字符串 = "Tutorialspoint" 输出:6 解释 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。总共有 6 个元

PHP的魔法方法有哪些?PHP的魔法方法包括:1.\_\_construct,用于初始化对象;2.\_\_destruct,用于清理资源;3.\_\_call,处理不存在的方法调用;4.\_\_get,实现动态属性访问;5.\_\_set,实现动态属性设置。这些方法在特定情况下自动调用,提升代码的灵活性和效率。

PHP和Python各有优势,选择依据项目需求。1.PHP适合web开发,尤其快速开发和维护网站。2.Python适用于数据科学、机器学习和人工智能,语法简洁,适合初学者。

PHP是一种广泛应用于服务器端的脚本语言,特别适合web开发。1.PHP可以嵌入HTML,处理HTTP请求和响应,支持多种数据库。2.PHP用于生成动态网页内容,处理表单数据,访问数据库等,具有强大的社区支持和开源资源。3.PHP是解释型语言,执行过程包括词法分析、语法分析、编译和执行。4.PHP可以与MySQL结合用于用户注册系统等高级应用。5.调试PHP时,可使用error_reporting()和var_dump()等函数。6.优化PHP代码可通过缓存机制、优化数据库查询和使用内置函数。7

PHP在电子商务、内容管理系统和API开发中广泛应用。1)电子商务:用于购物车功能和支付处理。2)内容管理系统:用于动态内容生成和用户管理。3)API开发:用于RESTfulAPI开发和API安全性。通过性能优化和最佳实践,PHP应用的效率和可维护性得以提升。
