第二节 对象模型 [2]
作者:bea
PHP5有一个单重继承的,限制访问的,可以重载的对象模型. 本章稍后会详细讨论的”继承”,包含类间的父-子关系. 另外,PHP支持对属性和方法的限制性访问. 你可以声明成员为private,不允许外部类访问. 最后,PHP允许一个子类从它的父类中重载成员.file://haohappy注:PHP4中没有private,只有public.private对于更好地实现封装很有好处.PHP5的对象模型把对象看成与任何其它数据类型不同,通过引用来传递. PHP不要求你通过引用(re
PHP5有一个单重继承的,限制访问的,可以重载的对象模型. 本章稍后会详细讨论的”继承”,包含类间的父-子关系. 另外,PHP支持对属性和方法的限制性访问. 你可以声明成员为private,不允许外部类访问. 最后,PHP允许一个子类从它的父类中重载成员.
file://haohappy注:PHP4中没有private,只有public.private对于更好地实现封装很有好处.
PHP5的对象模型把对象看成与任何其它数据类型不同,通过引用来传递. PHP不要求你通过引用(reference)显性传递和返回对象. 在本章的最后将会详细阐述基于句柄的对象模型. 它是PHP5中最重要的新特性.
有了更直接的对象模型,基于句柄的体系有附加的优势: 效率提高, 占用内存少,并且具有更大的灵活性.
在PHP的前几个版本中,脚本默认复制对象.现在PHP5只移动句柄,需要更少的时间. 脚本执行效率的提升是由于避免了不必要的复制. 在对象体系带来复杂性的同时,也带来了执行效率上的收益. 同时,减少复制意味着占用更少的内存,可以留出更多内存给其它操作,这也使效率提高.
file://haohappy注:基于句柄,就是说两个对象可以指向同一块内存,既减少了复制动作,又减少对内存的占用.
Zand引擎2具有更大的灵活性. 一个令人高兴的发展是允许析构--在对象销毁之前执行一个类方法. 这对于利用内存也很有好处,让PHP清楚地知道什么时候没有对象的引用,把空出的内存分配到其它用途。
猜你喜欢
您可能感兴趣的文章:
- PHP出错界面
- ftp类(myftp.php)
- 第1次亲密接触PHP5(2)
- PHP的FTP学习(一)[转自奥索]
- 一个多文件上传的例子(原创)
- [FAQ]PHP中的一些常识:类篇
- Oracle Faq(Oracle的版本)
- PHP 和 HTML
- 数据库相关问题
- 编译问题
- PHP 和 COM
- 如何获得PHP相关资料
- VML绘图板②脚本--VMLgraph.js、XMLtool.js
- example1.php
- 一个ftp类(ini.php)
- php中数据的批量导入(csv文件)
- 第四节 构造函数和析构函数 [4]
- PHP5 安装方法
- Classes and Objects in PHP5-面向对象编程 [1]