当前位置:首页 » 编程博文
开发技术指南» 文章正文
    引言: PHP5 的对象模型 PHP5有一个单重继承的,限制访问的,可
 

 

    摘要:第四节--构造函数和析构函数如果你在一个类中声明一个函数,命名为__construct,这个函数将被当成是一个构造函数并在建立一个对象实例时被执行. 清楚地说,__是两个下划线. 就像其它任何函数一样,构造函数可能有参数或者默认值. 你可以定义一个类来建立一个对象并将其属性全放在一个语句(statement)中. 你也可以定义一个名为__destruct的函数,php将在对象被销毁前调用这个函数.......
    摘要:第六节--访问属性和方法一个对象实例的属性是变量,就像php的其他变量一样. 但是你必须使用->运算符来引用它们. 不需要在属性前使用美元符$. 例如, 6.1中打印user对象的name属性那一行. 可以联用->,如果一个对象的属性包含了一个对象,你可以使用两个->运算符来得到内部对象的属性. 你甚至可以用双重引用的字符串来放置这些表达式. 看6.5中的例子,对象house中的属性room包含了......


PHP5的对象模型[2]--对象模型

php5 的对象模型

php5的对象模型把对象看成与任何其它数据类型不同,通过引用来传递. php不要求你通过引用(reference)显性传递与返回对象. 在本章的最后将会详细阐述基于引用的对象模型. 它是php5中最重要的新特性. 【程序编程相关:架设Nokia J2ME开发环境 Ste

php5有一个单重继承的,限制访问的,可以重载的对象模型. 本章稍后会详细讨论的”继承”,包含类间的父-子关系. 另外,php支持对属性与方法的限制性访问. 你可以声明成员为private,不允许外部类访问. 最后,php允许一个子类从它的父类中重载成员. 【推荐阅读:tiles和struts初步应用

在php的前几个版本中,脚本默认复制对象.现在php5只移动句柄,需要更少的时间. 脚本执行效率的提升是由于避免了不必要的复制. 在对象体系带来复杂性的同时,也带来了执行效率上的收益. 同时,减少复制意味着占用更少的内存,可以留出更多内存给其它操作,这也使效率提高. 【扩展信息:判断密码是不是简单文本的函数

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

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

补充:

php5的内存管理

对象传递

 

php5使用了zend引擎ii,对象被储存于独立的结构object store中,而不像其它一般变量那样储存于zval中(在php4中对象与一般变量一样存储于zval).
...   下一页
 ·php5的对象模型[8]--访问限制    »显示摘要«
    摘要:第八节--访问方式php5的访问方式允许限制对类成员的访问. 这是在php5中新增的功能,但在许多面向对象语言中都早已存在. 有了访问方式,才能开发一个可靠的面向对象应用程序,并且构建可重用的面向对象类库.像c++和java一样,php有三种访问方式:public,private和protected. 对于一个类成员的访问方式,可以是其中之一. 如果你没有指明访问方式,默认地访问方式为public......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE