PHP面向对象编程
面向过程编程思想:
就是将要完成的任务(工作、事情)分解为若干的步骤,程序开始后,从前往后,每个步骤依次执行,最后达到所期望的结果。
面向对象编程思想:
OOP:Object Oriented Program(面向对象编程)
就是将要完成的任务(工作、事情),分拆为不同的“对象”要做的不同的子任务,程序开始后,每个不同的对象,依据“他人的要求”,去完成自己的子任务,最后大家都按计划完成后,则总任务也就完成。
类与对象:
类是抽象的,是泛指,是某一类事物的统称。
对象是具体的,是特指,是某一个具体事物的“特称”。
属性:属性本质就是变量
方法:方法的本质是函数
对象传值:指的是将一个变量传递给另一个变量的方式方法。
值传递:将变量的值(数据)复制一份,然后再赋值给另一个变量。此时实际就是有了“两个变量两份数据”。
#例如 $a=1; $b=$a; echo $b; 结果为1 这个就是值传递
引用传递:将变量的地址复制一份,然后再将该地址赋值给另一个变量。此时实际上是“两个变量一份数据”。
#例如 $a=1; $b=&$a; $b=2; echo $a; 结果是2 因为指向的是内存的同一个地址
对象的克隆:$新对象=clone $原对象;
克隆的对象是不全等的,必须是同一个对象才全等。
对象隶属判断 instanceof运算符 ,一个对象,由一个类new出来,则这个对象就隶属于这个类 可以用这个运算符判断。
类中成员是指可以定义在类中的类的构成成分。
从成员的类型来说,类中成员分为:属性,方法,类常量。
其中:
属性按性质又可分为:实例属性,静态属性。
方法按性质又可分为:实例方法,静态方法,魔术方法。
实例属性和实例方法统称为实例成员;
静态属性和静态方法统称为静态成员。
实例成员:
实例属性:供这个类的实例(对象)来使用的属性,或者说是由这个类的实例来访问(操作)的属性。
实例方法:实例方法就是供这个类的实例(对象)来使用的方法,或者说是由这个类的实例来访问的方法。
$this关键字 指向当前对象
静态成员:
静态属性:静态属性,就是供这个类来使用的属性,或者说是由这个类来访问(操作)的属性。
静态方法:静态方法就是供这个类来使用的方法,或者说是由这个类来访问(操作)的方法。
self关键字 指向当前的对象的静态方法或属性
魔术方法:魔术方法是PHP语言内部规定的有特定名称、形式和含义的方法,不太多,也就几个。
每一个魔术方法,都代表特定的含义或作用。
构造方法:__construct 这个对象被实例化的时候自动调用这个方法
析构方法:__destruct 这个对象被销毁的时候自动调用的方法
类常量:类常量就是常量,只是写在类里,属于类
日后继续~~