设为首页 收藏本站
查看: 1196|回复: 0

[经验分享] php面向对象教程

[复制链接]

尚未签到

发表于 2018-12-22 08:04:58 | 显示全部楼层 |阅读模式
1.面向对象的概念
面向对象编程(Object Oriented Programming, OOP, 面向对象程序设计)是一种计算机编程
架构,OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成,OOP
达到了软件工程的三个目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收
信息、处理数据和向其它对象发送信息。面向对象一直是软件开发领域内比较热门的话题,首先,
面向对象符合人类看待事物的一般规律。其次,采用面向对象方法可以使系统各部分各司其职、各
尽所能。为编程人员敞开了一扇大门,使其编程的代码更简洁、更易于维护,并且具有更强的可重
用性。有人说PHP 不是一个真正的面向对象的语言,这是事实。PHP 是一个混合型语言,你可以使
用OOP,也可以使用传统的过程化编程。然而,对于大型项目,你可能需要在PHP 中使用纯的OOP
去声明类,而且在你的项目里只用对象和类。这个概念我先不多说了,因为有很多朋友远离面向对
象编程的主要原因就是一接触面向对象概念的时候就理解不上去, 所以就不想去学下去了。等读
者看完整篇内容后再去把概念搞明白吧。
2.什么是类,什么是对象,类和对象之间的关系
类的概念:类是具有相同属性和服务的一组对象的集合。它为属于该类的所有对象提供了统一
的抽象描述,其内部包括属性和服务两个主要部分。在面向对象的编程语言中,类是一个独立的程
序单位,它应该有一个类名并包括属性说明和服务说明两个主要部分。
对象的概念:对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。一
个对象由一组属性和对这组属性进行操作的一组服务组成。从更抽象的角度来说,对象是问题域或
实现域中某些事物的一个抽象,它反映该事物在系统中需要保存的信息和发挥的作用;它是一组属
性和有权对这些属性进行操作的一组服务的封装体。客观世界是由对象和对象之间的联系组成的。
类与对象的关系就如模具和铸件的关系,类的实例化结果就是对象,而对一类对象的抽象就是
类。类描述了一组有相同特性(属性)和相同行为(方法)的对象。
上面大概就是它们的定义吧,也许你是刚接触面向对象的朋友, 不要被概念的东西搞晕了,给
你举个例子吧,如果你去中关村想买几台组装的PC 机,到了那里你第一步要干什么,是不是装机
的工程师和你坐在一起,按你提供的信息和你一起完成一个装机的配置单呀,这个配置单就可以想
象成是类,它就是一张纸,但是它上面记录了你要买的PC 机的信息,如果用这个配置单买10 台机
器,那么这10 台机子,都是按这个配置单组成的,所以说这10 台机子是一个类型的,也可以说是
一类的。那么什么是对象呢,类的实例化结果就是对象,用这个配置单配置出来(实例化出来)的
机子就是对象,是我们可以操作的实体,10 台机子,10 个对象。每台机子都是独立的,只能说明
他们是同一类的,对其中一个机做任何动作都不会影响其它9 台机器,但是我对类修改,也就是在
这个配置单上加一个或少一个配件,那么装出来的9 个机子都改变了,这是类和对象的关系(类的
实例化结果就是对象)。
3.什么是面向对象编程呢?
就不说他的概念,如果你想建立一个电脑教室,首先要有一个房间, 房间里面要有N 台电脑,
有N 张桌子, N 把椅子, 白板, 投影机等等,这些是什么,刚才咱们说了,这就是对象,能看
到的一个个的实体,可以说这个电脑教室的单位就是这一个个的实体对象, 它们共同组成了这个
电脑教室,那么我们是做程序,这和面向对象有什么关系呢?开发一个系统程序和建一个电脑教室
类似,你把每个独立的功能模块抽象成类,形成对象,由多个对象组成这个系统,这些对象之间都
能够接收信息、处理数据和向其它对象发送信息等等相互作用。就构成了面向对象的程序。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-654210-1-1.html 上篇帖子: PHP面向对象总结 下篇帖子: 我的php学习笔记(43) PHP中MVC学习之ThinkPHP
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表