- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * PHP面向对象高级 网址: 电话:400 700 1307 OOP的3个重要特性 封装的类 类层次结构,继承 多态性 封装性就是把对象的属性和行为结合成一个独立的相同单位,并尽可能隐蔽对象的内部细节。 1.把对象的全部属性和全部行为结合在一起,形成一个不可分割的独立单位(即对象)。 2.信息隐蔽,即尽可能隐蔽对象的内部细节,对外形成一个边界〔或者说形成一道屏障〕,只保留有限的对外接口使之与外部发生联系。 封装的原则在软件上的反映是:要求使对象以外的部分不能随意存取对象的内部数据(属性),从而有效的避免了外部错误对它的交叉感染,使软件错误能够局部化,大大减少查错和排错的难度。 封装的类 类的封装 将类的成员变量声明为private,再通过public 的方法来对这个变量进行访问。即可实现良好的封装性。 对于一个变量的操作,一般都有读取和赋值操作,getXxx(),setXxx(); 类的封装性带来的优点 隐藏类的实现细节 让使用者只能通过事先定义好的方法来访问数据,可以方便的加入逻辑控制,进行数据检查,限制对属性的不合理操作。 便于修改增强代码的可维护性 __get()和__set() 一般来说,把类的属性定义为private,这更符合现实的逻辑。但是, 对属性的读取和赋值操作是非常频繁的,因此在PHP5中,预定义了两个函数__get()和__set()来获取和赋值其属性。 //__get() function __get($property_name){ if(isset($this-$property_name)) { return($this-$property_name); } else { return(NULL); } } //__set() function __set($property_name, $value) { $this-$property_name = $value; } 继承性: B类的对象拥有A类的全部属性与行为,称作B对A类的继承。例如,轮船?客轮;人?大人。 假如一个类只继承了另外一个类,这称为单继承。例如:狗继承动物;另外假如一个类从多个类中继承了属性与服务,这称为多继承。例如,客轮继承轮船和客运工具。 通常我们称被继承类为父类(superclass,超类),继承类为子类(subclass)。在PHP中只有单继承,但一个类可以被多个类继承。 继承 如果类是另一个类的子类,可以用关键词 extends 来指明其继承关系。如下代码创建了一个名为B的类,它继承了在它前面定义的类A。 Class A class B extends A { { public $num1; public $num2; function fun1(){ function fun2(){ } } } } 如下所示的所有对类B对象的操作和属性的访问都是有效的: $b=new B(); $b-$num1=10; $b-$num2=20; $b-fun1( ); $b-fun2( ); 类的继承 class Person { public $name; public $age; function getInfo(){...} } class Student { public $name; public $age; public $school; function getInfo(){...} function study(){...} } class Person { public $name; public $age; function getInfo(){...} } class Student extends Person { public $school; function study(){...} } 通过继承可以简化类的定义。 类的继承 PHP只支持单继承,不允许多重继承。一个子类只能有一个父类,不允许一个类直接继承多个类,但一个类可以被多个类继承。 可以
您可能关注的文档
- ENDNOTE教程之高级篇.ppt
- ERP 沙盘模拟和信息化管理.doc
- Excel_基础应用_办公技巧大全_高级技能_{史上最全教程.doc
- Excel高级使用教程.doc
- excel函数高级应用教程.doc
- Excel数据处理和分析之高级教程.doc
- EXCEL应用高级教程.ppt
- Excle2013高级教程.ppt
- Extjs4.1中treepanel的全部高级操作教程.doc
- flash教程3.高级使用.doc
- 第18讲 第17课 西晋的短暂统一和北方各族的内迁.docx
- 第15讲 第14课 沟通中外文明的“丝绸之路”.docx
- 第13课时 中东 欧洲西部.doc
- 第17讲 第16 课三国鼎立.docx
- 第17讲 第16课 三国鼎立 带解析.docx
- 2024_2025年新教材高中历史课时检测9近代西方的法律与教化含解析新人教版选择性必修1.doc
- 2024_2025学年高二数学下学期期末备考试卷文含解析.docx
- 山西版2024高考政治一轮复习第二单元生产劳动与经营第5课时企业与劳动者教案.docx
- 第16讲 第15课 两汉的科技和文化 带解析.docx
- 第13课 宋元时期的科技与中外交通.docx
最近下载
- 单向板肋梁楼盖计算.docx
- 作业4:工学一体化课程《小型网络安装与调试》工学一体化课程考核方案.docx VIP
- 中国画之写意画.ppt VIP
- (2019苏教)小学科学三年级上册:全册整套教案资料.pdf
- 核心素养导向的高中数学课例设计研究与实践(样例)(1).doc
- 驾驶证延期委托书模板.doc
- 作业5:工学一体化课程《小型网络安装与调试》工学一体化课程终结性考核试题.docx VIP
- 作业5:工学一体化课程《小型网络安装与调试》工学一体化课程终结性考核试题.pdf VIP
- 中国画的构图形式ppt课件.pptx
- 作业11:《小型网络安装与调试》工学一体化课程教学进度计划表.pdf VIP
文档评论(0)