Heim >php教程 >php手册 >[FAQ]PHP中的一些常识:类篇

[FAQ]PHP中的一些常识:类篇

WBOY
WBOYOriginal
2016-06-13 12:45:071123Durchsuche


我把一些PHP中类的常识性整理出来,让新手们更容易掌握PHP类,以便能快速看懂那些老大们写的程序,呵呵,不过比较少,希望老大们补充一下或者修正其中错误理解。

Q:PHP中的类可以有构造函数么?
A:可以,只要函数名和类名相同,这个函数将成为构造函数。在使用 new 操作符来创建一个类的实例时,该构造函数将会自动调用,因此,可以把一些初始化工作放在构造函数里完成。

Q:PHP中的类有析构函数么?
A:没有。当对象被销毁,使用 unset() 或者简单的脱离范围,析构函数都会自动调用。但 PHP 中没有析构函数。 如:
unset($foo);
就销毁一个类对象$foo了。


Q:要如何继承一个类?
A:使用关键字 extends 来继承一个类,如:
class B extents A {
}


Q:在类的定义中如何引用自身?
A:使用 $this 来引用当前类自身,如:
$this->name = "Tom";


Q:在子类中如何使用父类?
A:使用 :: 操作符,且有两种方式,一种是直接用父类名,如:
     A::example();
一种是用 parent 关键字,如:
    parent::example();
建议采用 parent:: 来引用父类。


Q:我不想创建类的实例,能直接使用类中的函数或变量吗?
A:可以,采用 :: 操作符,如:
    B::example();
就可以执行B类中的函数example(),而并没有创建任何B类的对象,仅仅是作为一个类函数来调用,这对于功能模块归纳组织很有好处。


Q:PHP有多重继承么?//added by erquan
A:没有。子类不能同时从两个父类继承,即一个孩子不能同时有两个爸爸:)。子类必须依赖于一个且必须已存在的基类。 

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:生成缩略图Nächster Artikel:模拟xcopy的函数