《Web程序设计》-第六讲面向对象开发.ppt_第1页
《Web程序设计》-第六讲面向对象开发.ppt_第2页
《Web程序设计》-第六讲面向对象开发.ppt_第3页
《Web程序设计》-第六讲面向对象开发.ppt_第4页
《Web程序设计》-第六讲面向对象开发.ppt_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

第六讲面向对象开发,版权所有计算机科学系软件教研室Web程序设计,目录,面向对象基础对象的概念创建和使用类类的结构与定义类成员访问修饰符$this关键字构造方法类的继承,目录,parents:和slef:关键字类常量静态成员变量和方法对象类型检测instanceof类的多态性抽象方法与抽象类接口的实现,面向对象基础,面向对象编程(OOP)起源于20世纪60年代,直到20世纪90年代才成为应用软件开发的主流,而如今从应用软件时代过渡到Web,面向对象思想仍然具备极大的应用价值。面向对象开发方法包括面向对象分析OOA面向对象设计OOD面向对象编程OOP了解OOP,先要理解数据抽象,数据抽象是一个基本的数据类型,以及在这个数据类型上可以实现的操作集合,用户不用关心这个类型是如何实现的,只需要知道该类型上定义了哪些操作。,面向对象基础,面向对象编程(OOP)三大特点是:封装、继承和多态。使用面向对象编程(OOP)架构开发应用程序的优点:容易分发代码,方便系统二次开发促进代码整洁及重用促进可扩展性、代码弹性,以及适应性适合于团队开发OOP有很多设计模式可利用,可以直接再次利用和开发,对象的概念,理解“万事万物皆对象”,创建和使用类,创建和使用类的步骤:编写类的语句段将要使用的对象的类文件包含到当前脚本中在脚本中创建一个对象使用新对象,类的结构与定义,类是对象的模板。在准备创建类之前,应该确定项目中需要的对象属性和方法。类的定义与结构类的实例化,$tempCar=newMycar();,类成员,字段和方法是最重要的类成员类型。字段是数据成员,方法是函数成员。字段隶属于类的变量它可以是任何类型,无论是预定义还是用户定义类型和所有变量一样,字段用来保存数据可以被写入可以被读取,classMyCarpublic$name;/定义一个名为name的字段,类成员,方法具有名称的可执行代码块,可以从程序的很多不同地方执行,甚至从其他程序中执行返回类型,它声明了方法返回值的类型。如果没有返回值,默认不写名称:方法的名称参数列表:它由至少一对空的圆括号组成。如果有参数,它们被列在圆括号中间方法体:它由一对大括号组成,大括号内包含执行代码由function来声明,类成员,访问修饰符,$this关键字,在一个类中,$this是一个特殊的变量,并且只能在类的内部使用,用以获取类中某个成员变量的值。使用$this的格式如下$this-varname,classMyCarpublic$name;functionDrive()echo”我正在开”.$this-name.”牌的车”;,构造方法,构造方法的作用是初始化类的成员字段。在PHP5中,创建构造方法规定使用如下名称(注意,是两条下划线)_construct()如果在一个类中没有显示声明_construct()构造方法,PHP会自动生成默认的构造方法,该方法没有任何内容,它不接受任何参数。,构造方法,name;echo”尺寸:”.$this-size;echo”颜色:”.$this-color;echo”价格:”.$this-price;echo”车型:”.$this-type;?,$bieke=newMyCar();$bieke-name=“凯越”;$bieke-size=“410*180*170”;$bieke-price=“140000”;$bieke-color=“铂灰”;$bieke-type=“轿车”;$bieke-Drive();,构造方法,Qpublic$horse=“别墅”;functionDrive()echo”开宝马7系列车”;classSonextendsFather/不定义任何方法和字段$temp=newSon();echo$temp-money;echo$temo-horse;$temp-Drive();,parents:和slef:关键字,self:指当前类,通常用来获取静态成员、方法和常量parents:指的是父类和要调用的父类中的成员方法,也可以用来获取成员变量和常量,parents:和slef:关键字,类常量,类常量是定义在类中的常量,如果我们使用const关键字来修饰该常量,那么该常量就被称为类常量。类常量定义就不能再进行赋值操作。类常量访问外部访问:类名:常量名称内部访问:self:常量名称,classComputerconstCOMPUTER_TYPE=1;constCOMPUTER_FACTORY=“CN”;echoComputer:COMPUTER_FACTORY.”n”;,静态成员变量和方法,由static关键字声明的成员变量和方法称为静态成员变量和方法。静态成员访问时不需要实例化类,而是直接访问,格式如下:类名:静态成员变量类名:静态方法名称另:parent:和self:同样适合静态成员变量和方法。,对象类型检测instanceof,功能:检测当前对象是否属于某一个类的类型返回值:bool逻辑值,类的多态性,多态性概括:子类可以以父类的身份出现,抽象方法与抽象类,抽象类是一种不能被实例化的类,它主要用于为继承的子类定义界面,在抽象类里面的成员方法都是没有具体实现的方法。采用abstract关键字来修饰。如果抽象类的子类没有实现父类的全部方法,那子类也是抽象类,也不能被实例化。,接口的实现,通过类的继承可以实现一个父子关系的描述,如果要实现多重继承,就要使用接口(interface),接口提供了多重继承的功能实现。实现接口就必须实现接口中的所有方法。,interfaceInterfaceNamefunctionIMethod1();,interfaceInterf

温馨提示

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

评论

0/150

提交评论