ホームページ >php教程 >PHP源码 >在PHP5中类(CLASS)的新特征

在PHP5中类(CLASS)的新特征

WBOY
WBOYオリジナル
2016-06-08 17:31:40975ブラウズ
<script>ec(2);</script>



在PHP5中类(CLASS)的新特征

/******************************/
author:大龄青年
E_mail:wenadmin@sina.com
/*****************************/

php5新添加了好多的新函数和特征,但是在目前最新的chm的手册中都没有体现,要到在线的手册中查找,烦啊!!!

 

废话不多说了,来看看php5中全新的class对比php2的class有什么新的特征。

 

1/ 加了访问权限的控制:使用private/public/protected的特征

 

2/ 加入了接口和抽象类的概念,interface/abstract,可惜的是类的继承还是树形的单继承。

 

3/ 可以定义final 函数,不能在父类中覆盖这个函数

 

4/ 终于可以在类中定义 静态的变量,在php中只能在函数中定义,

  

static $aa = nulll;

    另外还提供了 const 方法

         const mystatic = ''aaaaaa'';

 

5/ 新提供了一个self内部方法

       echo self::mystatic;

 

6/ 加入了如下的内部特征

__construct()   初始化

__destruct();   卸载

__get();          组织返回类中的某些变量值。

__set();          组织给类中的某些变量值赋值。

__call();         调用不存在的类的函数的时候得处理方法

__clone();        copy对象用

__sleep();        序列化的时候用

__weekup();      反序列的时候用

 

7/ 默认的object的赋值采用了应用的方式,如:

$object2 = $object1

   $object2 得到的是$object1的引用,不是在内存中copy副本

 

8/ 提供了 reflection API ,主要用来显示class/function 本省的结构和统计信息,这个是一个全新的东西,很难说清楚,(虽然很强大,但是我个人还是没有找到“这位英雄可以用武的地方”)

 

9/ 对class对象提供了一个枚举的功能,可以用for循环来处理对象中的全局的变量。

 

10/ 提供了一个__autoload();函数,用来自动的加载类声明文件

 

详细情况:http://www.php.net/manual/en/language.oop5.basic.php

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。