PHP面向对象程序设计.ppt

PHP面向对象程序设计.ppt

ID:51620489

大小:399.05 KB

页数:33页

时间:2020-03-26

PHP面向对象程序设计.ppt_第1页
PHP面向对象程序设计.ppt_第2页
PHP面向对象程序设计.ppt_第3页
PHP面向对象程序设计.ppt_第4页
PHP面向对象程序设计.ppt_第5页
资源描述:

《PHP面向对象程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第6章PHP面向对象程序设计6.1基本概念6.2PHP中的类6.3类的继承6.4抽象类与接口6.5类的魔术方法6.6类型判断与引用6.7实例——设计一个学生管理类6.1基本概念1.封装封装是将数据和代码捆绑到一起,避免外界的干扰和不确定性。在PHP中,封装是通过类来实现的。类是抽象数据类型的实现,一个类的所有对象都具有相同的数据结构,并且共享相同的实现操作的代码,而各个对象又有着各自不同的状态,即私有的存储。因此,类是所有对象的共同的行为和不同状态的结合体。2.继承类提供了创建新类的一种方法,再借助于“继承”这一重要机制

2、扩充了类的定义,实现了面向对象的优越性。继承提供了创建新类的方法,这种方法就是,一个新类可以通过对已有的类进行修改或扩充来满足新类的需求。新类共享已有类的行为,而自己还具有修改的或额外添加的行为。因此,可以说继承的本质特征是行为共享。3.多态不同的类对于不同的操作具有不同的行为,称为多态。多态机制使具有不同的内部结构的对象可以共享相同的外部接口,通过这种方式减少代码的复杂度。6.2PHP中的类6.2.1创建类类是面向对象程序设计的核心,它是一种数据类型。类由变量和函数组成,在类里面,变量称为属性或成员变量,函数称为方法。

3、定义类的语法格式如下:classclassname{[var$property[=value];…][functionfunctionname($args){//代码}]}6.2.1创建类自PHP5.5起,关键字class也可用于类名的解析。使用classname::class可以获取一个字符串,包含了类classname的完全限定名称。这对使用了命名空间的类尤为有用。例如:以上程序会输出:NS

4、classname6.2.2类的属性和方法在类中,使用关键字var来声明变量,即类的属性。使用关键字function来定义函数,即类的方法。例如,以下是一个简单的类定义:classa{var$a='helloworld';functionfun($b){echo"helloworld";}}6.2.2类的属性和方法自PHP5.3.0起,新增对nowdoc(详见第3.2.3节)的支持,即可以使用nowdoc初始化属性,例如:classa{var$a=<<<'EOT'helloworldEOT;…}不能将类的定义放到多个文

5、件或多个PHP块中,例如,以下的做法是错误的:var$tmp;6.2.3类的实例化在声明一个类后,类只存在于文件中,程序不能直接调用。需要创建一个对象后程序才能使用,创建一个类对象的过程叫做类的实例化。类的实例化使用new关键字,关键字后面需要指定实例化的类名,例如,定义一个Ctest类并实例化:

6、$str)//声明一个方法{$this->stunumber=$str;//使用$this指针引用类内部的属性echo$this->stunumber;}}$obj=newCtest;//创建Ctest类的一个对象$obj?>在实例化一个类时,有些类允许在实例化时接收参数,如果能够接收参数,可以使用以下代码创建对象,其中$args是所带参数:$obj=newCtest([$args,…]);6.2.4类的访问在对象被创建之后,可以在类的外部对该类的属性和方法进行访问,访问的方法是在该类对象后面使用“->”符号加上要访问的

7、属性和方法。例如,创建了对象“$obj”,类中有属性“$stunumber”,要访问该属性可以使用“$obj->stunumber”,注意属性的前面没有“$”。例如,访问Ctest类的属性和方法:$obj->stunumber='081102';//给类属性$stunumber赋值echo$obj->stunumber;//输出'081102'$obj->add('081101');//输出'081101'6.2.4类的访问在PHP 5中,引入了访问修饰符public、private和protected。它们可以控制属性

8、和方法的可见性,通常放置在属性和方法的声明之前。public。声明为公用的属性和方法,可以在类的外部或内部进行访问。public是默认选项,如果没有为一个属性或方法指定修饰符,那么它将是public的。private。声明为私有的属性和方法,只可以在类的内部进行访问。私有的属性和方法将不会被继承。protect

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。