第二节 对象模型 [2]


Posted in PHP onOctober 09, 2006

PHP5有一个单重继承的,限制访问的,可以重载的对象模型. 本章稍后会详细讨论的”继承”,包含类间的父-子关系. 另外,PHP支持对属性和方法的限制性访问. 你可以声明成员为private,不允许外部类访问. 最后,PHP允许一个子类从它的父类中重载成员.

file://haohappy注:PHP4中没有private,只有public.private对于更好地实现封装很有好处.

PHP5的对象模型把对象看成与任何其它数据类型不同,通过引用来传递. PHP不要求你通过引用(reference)显性传递和返回对象. 在本章的最后将会详细阐述基于句柄的对象模型. 它是PHP5中最重要的新特性.

有了更直接的对象模型,基于句柄的体系有附加的优势: 效率提高, 占用内存少,并且具有更大的灵活性.

在PHP的前几个版本中,脚本默认复制对象.现在PHP5只移动句柄,需要更少的时间. 脚本执行效率的提升是由于避免了不必要的复制. 在对象体系带来复杂性的同时,也带来了执行效率上的收益. 同时,减少复制意味着占用更少的内存,可以留出更多内存给其它操作,这也使效率提高.

file://haohappy注:基于句柄,就是说两个对象可以指向同一块内存,既减少了复制动作,又减少对内存的占用.

Zand引擎2具有更大的灵活性. 一个令人高兴的发展是允许析构--在对象销毁之前执行一个类方法. 这对于利用内存也很有好处,让PHP清楚地知道什么时候没有对象的引用,把空出的内存分配到其它用途。

PHP 相关文章推荐
逐步提升php框架的性能
Jan 10 PHP
php下删除字符串中HTML标签的函数
Aug 27 PHP
php实现无限级分类(递归方法)
Aug 06 PHP
解决PHP里大量数据循环时内存耗尽的方法
Oct 10 PHP
PHP中addcslashes与stripcslashes函数用法分析
Jan 07 PHP
使用PHPMailer发送邮件实例
Feb 15 PHP
php使用json_decode后数字对象转换成了科学计数法的解决方法
Feb 20 PHP
thinkphp查询,3.X 5.0方法(亲试可行)
Jun 17 PHP
在php的yii2框架中整合hbase库的方法
Sep 20 PHP
Laravel框架自定义验证过程实例分析
Feb 01 PHP
PHP获取ttf格式文件字体名的方法示例
Mar 06 PHP
浅谈laravel aliases别名的原理
Oct 24 PHP
第三节 定义一个类 [3]
Oct 09 #PHP
Zend引擎的发展 [15]
Oct 09 #PHP
第五节 克隆 [5]
Oct 09 #PHP
第六节 访问属性和方法 [6]
Oct 09 #PHP
第八节 访问方式 [8]
Oct 09 #PHP
第九节 绑定 [9]
Oct 09 #PHP
第十节 抽象方法和抽象类 [10]
Oct 09 #PHP
You might like
wampserver改变默认网站目录的办法
2015/08/05 PHP
解读PHP中上传文件的处理问题
2016/05/29 PHP
php中输出json对象的值(实现方法)
2018/03/07 PHP
PHP实现普通hash分布式算法简单示例
2018/08/06 PHP
IE autocomplete internet explorer's autocomplete
2007/06/30 Javascript
jquery统计复选框选中示例
2013/11/05 Javascript
JavaScript实现的图像模糊算法代码分享
2014/04/22 Javascript
PHP PDO操作总结
2014/11/17 Javascript
javascript操作表格排序实例分析
2015/05/06 Javascript
javascript实现的闭包简单实例
2015/07/17 Javascript
js点击列表文字对应该行显示背景颜色的实现代码
2015/08/05 Javascript
js实现一个简单的数字时钟效果
2017/03/29 Javascript
微信小程序获取循环元素id以及wx.login登录操作
2017/08/17 Javascript
详解async/await 异步应用的常用场景
2019/05/13 Javascript
关于layui的动态图标不显示的解决方法
2019/09/04 Javascript
vue和H5 draggable实现拖拽并替换效果
2020/07/29 Javascript
[51:26]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第二局
2016/03/03 DOTA
Python的Django中django-userena组件的简单使用教程
2015/05/30 Python
使用Python的urllib和urllib2模块制作爬虫的实例教程
2016/01/20 Python
Python简单定义与使用字典dict的方法示例
2017/07/25 Python
Queue 实现生产者消费者模型(实例讲解)
2017/11/13 Python
python贪婪匹配以及多行匹配的实例讲解
2018/04/19 Python
python numpy 部分排序 寻找最大的前几个数的方法
2018/06/27 Python
python中pip的使用和修改下载源的方法
2019/07/08 Python
基于Python中random.sample()的替代方案
2020/05/23 Python
购买限量版收藏品、珠宝和礼品:Bradford Exchange
2016/09/23 全球购物
美国顶级奢侈茶:Mighty Leaf Tea(美泰茶)
2016/11/26 全球购物
阿提哈德航空官方网站:Etihad Airways
2017/01/06 全球购物
Stokke美国官方网店:高级儿童家具、推车、汽车座椅和配件
2020/06/06 全球购物
办公室文员工作职责
2014/01/31 职场文书
劲霸男装广告词
2014/03/21 职场文书
幼儿教师暑期培训方案
2014/08/27 职场文书
2014审计局领导班子民主生活会对照检查材料思想汇报
2014/09/20 职场文书
教师学期述职自我鉴定
2019/08/16 职场文书
小学四年级作文之最感动的一件事
2019/11/01 职场文书
MySQL对数据表已有表进行分区表的实现
2021/11/01 MySQL