第6章 PHP5的面向对象编程.ppt_第1页
第6章 PHP5的面向对象编程.ppt_第2页
第6章 PHP5的面向对象编程.ppt_第3页
第6章 PHP5的面向对象编程.ppt_第4页
第6章 PHP5的面向对象编程.ppt_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第6章 PHP5的面向对象编程,万红波 烟台大学 网络中心,主要内容,面向对象编程的基础知识 PHP5中面向对象编程的基本技术 PHP5中面向对象编程的高级技术,6.1 面向对象编程的基础知识,面向对象编程的基本概念 对象 属性 方法 类,6.1 面向对象编程的基础知识,面向对象编程的主要特征 封装性 继承性 父类 子类 多态性,6.2 PHP5中面向对象编程的基本技术,PHP4和PHP5对象模型有所不同; 主要学习PHP5中的面向对象的程序设计;,6.2.1 类的创建,使用关键字class 。,例子,var; ?,在类的方法中,可以访问类自身的有关属性 。 格式: $this-propert

2、yname,【例6.1】类的创建示例,xh=$xh; $this-xm=$xm; $this-xb=$xb; function getinfo() echo 学号:.$this-xh.; echo 姓名:.$this-xm.; echo 性别:.$this-xb.; ?,6.2.2 对象的使用,创建对象 $objectname=new classname(); 访问对象的属性与方法 $objectname-propertyname $objectname-methodname(.) 销毁对象 $objectname=NULL;,6.2.2 对象的使用,【例6.2】对象的使用示例。,$A=new

3、 student(); $A-setinfo(21251,“Jahon,“male); $A-getinfo(); $A=NULL;,6.2.3 构造函数的使用,构造函数是类中的一个特殊函数(或特殊方法),可在创建对象时自动地加以调用。 在PHP5中,构造函数的名称则是固定的,即必须为_construct。,6.2.3 构造函数的使用,class student var $xh; var $xm; var $xb; function _construct($xh,$xm,$xb) $this-xh=$xh; $this-xm=$xm; $this-xb=$xb; function getinf

4、o() echo 学号:.$this-xh.; echo 姓名:.$this-xm.; echo 性别:.$this-xb.; $A=new student(23,John,m); $A-getinfo();,6.2.4 析构函数的使用,析构函数在销毁对象时被自动调用。 在PHP5中,则可以使用析构函数,且其名称是固定的,即必须为_destruct。,6.2.4 析构函数的使用,class student var $xh; var $xm; var $xb; function _construct($xh,$xm,$xb) $this-xh=$xh; $this-xm=$xm; $this-x

5、b=$xb; function getinfo() echo 学号:.$this-xh.; echo 姓名:.$this-xm.; echo 性别:.$this-xb.; function _destruct() echo $this-xm. destruct!; ,6.2.4 析构函数的使用,$A=new student(23,John,m); $A-getinfo(); $A=NULL;,6.2.5 类属性的访问控制,使用访问控制关键字: public:公有属性,在类的内部和外部都可以访问; private:私有属性,只能在类的内部访问,并且不能 protected:保护属性,在类内部和子

6、类中可以访问;,6.2.5 类属性的访问控制,class student private $xh; private $xm; private $xb; function _construct($xh,$xm,$xb) $this-xh=$xh; $this-xm=$xm; $this-xb=$xb; function getinfo() echo 学号:.$this-xh.; echo 姓名:.$this-xm.; echo 性别:.$this-xb.; ,6.2.5 类属性的访问控制,class student private $xh; private $xm; private $xb; f

7、unction _get($propertyname) if (isset($this-$propertyname) return($this-$propertyname); else return(NULL); function _set($propertyname,$propertyvalue) $this-$propertyname=$propertyvalue; ,_get方法 _set方法,6.2.5 类属性的访问控制,$MyStudent=new student(200600001,卢铭,男); /当访问类中的不可见字段的时候,自动调用_get方法; echo 学号:$MyStud

8、ent-xh.; echo 姓名:$MyStudent-xm.; echo 性别:$MyStudent-xb.; $MyStudent-xh=200600002; $MyStudent-xm=刘莉; $MyStudent-xb=女; $MyStudent=NULL;,6.2.6 类方法的访问控制,使用访问控制关键字: public private protected,6.2.6 类方法的访问控制,class student private $xh; /学号(公有属性) private $xm; /姓名(私有属性) private $xb; /性别(保护属性) public function q

9、ueryinfo() /公有方法 $this-getinfo(); private function getinfo() /私有方法 echo 学号:$this-xh.; echo 姓名:$this-xm.; echo 性别:$this-xb.; ,6.3 PHP5中面向对象编程的高级技术,6.3.1 类的继承 6.3.2 方法的重载 6.3.3 对象的克隆 6.3.4 对象的串行化 6.3.5 静态成员的使用 6.3.6 抽象方法与抽象类的使用 6.3.7 接口的使用 6.3.8 类方法的调用处理 6.3.9 类文件的自动加载,6.3.1 类的继承,使用关键字extends。 基本格式:,6

10、.3.1 类的继承,【例6.8】类的继承示例(student07.php) 【例6.9】类的继承示例(student08.php) final关键字,在子类中调用父类的方法;,6.3.2 方法的重载,【例6.10】方法的重载示例(student09.php) 【例6.11】方法的重载示例(student10.php) final方法;,6.3.3对象的克隆,克隆函数:_clone。 【例6.12】对象的克隆示例(student11.php),6.3.4对象的串行化,使用serialize()与unserialize()函数。 【例6.13】对象的串行化与反串行化示例(student12.php)。,6.3.5 静态成员的使用,使用关键字static来进行声明。 【例6.14】静态成员的使用示例(student13.php)。,6.3.6 抽象方法与抽象类的使用,用关键字abstract定义 。 【例6.15】抽象方法与抽象类的使用示例。,6.3.7 接口的使用,使用关键字interface

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论