PHP面向对象编程设计.ppt
《PHP面向对象编程设计.ppt》由会员分享,可在线阅读,更多相关《PHP面向对象编程设计.ppt(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、PHP面向对象的编程设计面向对象的编程设计n类与对象的基本概念类与对象的基本概念n如何抽象一个类如何抽象一个类n通过类实例化对象通过类实例化对象n静态变量(类变量)和静态方法(类方法):静态变量(类变量)和静态方法(类方法):n封装性封装性n继承性继承性n常见的关键字和魔术方法常见的关键字和魔术方法n抽象类于接口抽象类于接口n多态性的应用多态性的应用类与对象的基本概念类与对象的基本概念什么是类:什么是类:在面向对象的编程语言中,类是一个独立的程序单位,具有相同属性和服务的一组对象的集合。它为属于该类的所有对象提供了统一的抽象描述,其内部包括成员属性和服务的方法两个主要部分。什么是对象:什么是对
2、象:对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。类和对象的关系类和对象的关系把猫的特性提取出来猫类对象(实例)对象(实例)对象(实例)类与对象的基本概念类与对象的基本概念入门案例:创建一个猫类。入门案例:创建一个猫类。创建一只猫(通过一个创建一只猫(通过一个cat类创类创建一个建一个cat对象)对象)$cat1=new cat();$cat1-name=“小白小白”;$cat1-age=3;$cat1-color=“白色白色”;$cat2=new cat();类与对象的基本概念类与对象的基本概念注意:从猫类到对象目前有几种说法:1、创建一个对象2、实例化一个对象3、把类
3、实例化通过上面的案例和讲解我们可以看出:(1)类是抽象的,概念的,代表一类实物,比如人类(2)对象是具体的,实际的,代表一个具体实物(3)类是对象的模板,对象是类的一个个实例。类与对象的基本概念类与对象的基本概念成员属性的说明:成员属性的说明:1、成员属性是从某个实物提取出的,它可以是基本数据类型(整数、小数、成员属性是从某个实物提取出的,它可以是基本数据类型(整数、小数、字符、布尔),也可以是复合数据类型(数组、对象)字符、布尔),也可以是复合数据类型(数组、对象)Class 类名类名成员属性(变量);成员属性(变量);Public$name;Public$age;这里的这里的public是
4、一个关键字,目前先认为是一个关键字,目前先认为$name属性是公开的,可以任意访问。属性是公开的,可以任意访问。类的声明和成员属性类的声明和成员属性类的属性如果赋初值,只能是一个直接的值,不能是函数的返回值,或是表类的属性如果赋初值,只能是一个直接的值,不能是函数的返回值,或是表达式返回值。达式返回值。如何创建对象:$对象名=new 类名();$对象名=new 类名;如何访问(使用)对象的属性$对象名-属性名;$cat1-name=“小明”/给某个对象赋值。如何抽象一个类如何抽象一个类创建对象创建对象2、怎样访问一个成员属性(前提是成员属性是public)基本语法:$对象名-属性名;如果一个文
5、件,专门用于定义类的,则命名规范应当是 类名.class.php一个小思考题一个小思考题:$a=new person;$a-name=“小明”;$b=$a;echo$a-name.”;echo$b-name.”;结论:PHP中的对象是按引用传递的,即每个包含对象的变量都持有对象的引用,而不是整个对象的拷贝。如何抽象一个类如何抽象一个类对象中成员的访问对象中成员的访问思考:$b-age=890 则echo$a-age;echo$b-age;对象在内存中的分配对象在内存中的分配地址空间对象在内存中的分配对象在内存中的分配函数和成员方法关系:函数和成员方法关系:当我们把一个函数写到某个类中,则该函数
6、可以称为成员方法。当我们把一个函数写到某个类中,则该函数可以称为成员方法。我们有这样一个需求:希望人可以说话,做算术题等等。我们有这样一个需求:希望人可以说话,做算术题等等。如:如:(1)添加)添加speak成员方法,输出我是一个好人成员方法,输出我是一个好人(2)添加)添加jisuan成员方法,该方法可以接收一个数成员方法,该方法可以接收一个数N,计算,计算1+n的结果。的结果。(3)访问修饰符是访问修饰符是 function 函数名(参数列表)函数名(参数列表)/函数体函数体/return 语句;语句;如何抽象一个类如何抽象一个类成员方法成员方法成员方法细节:(1)方法的参数列表可以是多个
7、,举例判断多个数(数组)最大的数。(2)方法可以没有返回值name=“孙悟空”;$p1-age=500;构造方法和析构方法是对象中的两个特殊方法,构造方法是对象创建完成后第一个被对象自动调用的方法,通常使用构造方法完成一些对象的初始化,构造方法和析构方法构造方法和析构方法在创建一个人对象时候,就初始化name和aga,需要构造方法。快速入门:Class personPublic$name;Public$agePublic funtion _construct($iname,$iage)$this-name=$iname,$this-age=$iageecho“我是构造方法”;$p1=new p
8、ersion(“李晓光”,67);echo“hello”.$p1-name;构造方法和析构方法构造方法和析构方法构造方法特点:构造方法特点:1、没有返回值,它是自动调用。2、在PHP5中一个类可以同时有两种形式的构造方法_construct()和类名(),当两个同时存在的时候,优先调用_construct(),请大家以后使用_construct()。什么是什么是this系统会给每个对象分配this代表当前对象,$this-属性名。(1)$this可以理解成就是对象本身在堆区的地址,(2)哪个对象使用到$this,就是哪个对象的地址。(3)this不能在类的外部使用,只能在类定义的方法中使用。构
9、造方法和析构方法构造方法和析构方法构造方法注意事项:(1)一旦自定义了一个构造函数,默认的构造函数就被覆盖了,这时在创建对象的时候就要使用自定义的构造函数。(2)一个类只能有一个构造函数(不能重载)(3)注意作用是完成对新对象 的初始化,并不是创建对象本身(4)在创建对象后,系统自动调用该类的构造方法。(5)一个类有且只有一个构造方法,在PHP5后虽然_construct()和类名()可以共存,但是实际上页只能使用一个。(6)如果没有给类自定义构造方法,则该类使用系统默认的构造方法(7)构造方法的默认访问修饰符是public若$p3=new cat()会报错。构造方法和析构方法构造方法和析构方
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PHP 面向 对象 编程 设计
限制150内