php面向对象的程序设计总结(整理版)

php面向对象的程序设计总结(整理版)

ID:18304836

大小:313.50 KB

页数:12页

时间:2018-09-16

php面向对象的程序设计总结(整理版)_第1页
php面向对象的程序设计总结(整理版)_第2页
php面向对象的程序设计总结(整理版)_第3页
php面向对象的程序设计总结(整理版)_第4页
php面向对象的程序设计总结(整理版)_第5页
资源描述:

《php面向对象的程序设计总结(整理版)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第8章_PHP面向对象的程序设计1.面向对象的概述22.构造方法和析构方法23.封装性3对成员属性封装使用的魔术方法:__set()、__get()、__isset()、__unset()34.继承性45.常见的关键字和魔术方法5Final关键字5Static关键字5Const关键字6单态设计模式:6Clone魔术方法7__toString()魔术方法7__call()魔术方法8__autoload()魔术方法8对象串行化8__sleep()和__wakeup()魔术方法96.多态性11抽象类:11接口:121.面向对象的概述面向对象的程序的最小单位是:对象面向过程的程序的

2、最小单位是:函数对象可以包含函数对象由两部分组成:成员属性(变量,静态的)和成员方法(函数,动态的);对象是通过类实例化出来的,所有面向对象的编程规则是:先声明类---->实例化对象(创建对象)---->使用对象。声明类:[一些修饰类的关键词]class类名{类中成员(成员属性,成员方法);}例如:classPerson{Private$name;Private$age;Private$sex;Functionsay(){};Functioneat(){};}实例化对象:$变量名=new类名称([参数类表]);例如:$p1=newPerson;对象类型在内存中的分配:内存分

3、为四个部分:栈空间段,堆空间段,数据段和代码段栈:存放对象的地址。堆:存放可变长度的数据:字符串,数组和对象数据段:存放初始化变量,全局变量等代码端:存放执行文件的操作指令(函数)对象中的成员访问:赋值:$引用名->成员属性=值;获取:echo$引用名->成员属性。调用成员方法:$引用名->成员方法。$this代表本对象。2.构造方法和析构方法构造方法:是对象创建完成后第一个被对象自动调用的方法。析构方法:是对象被销毁前自动调用的方法构造方法的作用:为成员属性初始化。Function__construct([参数列表]){//构造方法名称是以两个下划线开始的__constr

4、uct();方法体;}析构方法:Function__destruct(){//析构方法名称是以两个下划线开始的__destruct();方法体;}3.封装性封装性:就是把对象的成员属性和成员方法结合成一个独立的相同单位。并尽可能隐蔽对象的内部细节。封装所有的关键词有:public,private,protect.对成员属性封装使用的魔术方法:__set()、__get()、__isset()、__unset()__set():设置私有属性值时自动调用的魔术方法__get():获取私有属性的值的时候调用的魔术方法__isset():在外部直接查看私有属性是否存在时自动调用的魔

5、术方法__unset():删除对象中私有属性时自动调用的方法。实例:此程序的执行结果:4.继承性类的继承性(扩展性)使所建立的软件具有开放性、可扩充性、增加代码的可重用性、提高软件的可维护性。Php是单继承的父类(基类)--------子类(派生类)父类和子类就是一种继承的关系子类可以从父类中继承所有的成员属性和成员方法(除了private类型成员的不能继承)访问类型控制:privateprotectedpublic同一个类中√√√类的子类中√√所有的外部成员√子类中重载父类的方法:子类和声明和父类相同的方法名,即子类覆盖了父类中同名的方法。在子类中也可以改写重载的方法。在

6、类中调用父类的方法用parent::在外部:对象->成员类名::成员注意:如果子类再声明构造方法时,如果父类中已经有了构造方法(子类覆盖),一定要调用一次父类中的构造方法,否则父类中的构造方法就执行不到了,这样有一些的功能就不能自动执行。此程序运行飞结果为:5.常见的关键字和魔术方法Final关键字可以修饰类和成员方法,不能修饰成员属性和常量使用final修饰的类,不能有扩展(继承)使用final修饰的方法,不能被子类覆盖。Static关键字可以修饰成员属性和成员方法静态的成员在同一个类中的所有对象都是公用的静态成员只要类一加载就将静态成员分配到内存的数据段里使用stati

7、c标识的成员是属于类的,所以要使用类名访问,不能使用对象去访问在类内部使用self代表本类引用静态方法不能访问非静态的成员如果在方法中使用不到非静态成员,最好声明为静态方法。Const关键字只能修饰成员属性,使用const修饰的成员属性时属于类的,所有访问方式和静态成员是一样的,都是通过类名或在成员方法中使用self关键字访问。即在类外部使用类名访问,在类内部使用self访问类中声明常量时必须给初值。单态设计模式:类只有一个对象实例:本程序的执行结果为:Clone魔术方法__toString()魔术方法它是在直接输

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

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

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