php面向对象

一  面向对象

面向对象包括类和对象的概念; (对于某一类的事物只需做一个算法(此算法可无限使用)就可解决)

面向过程(只针对一个事物进行:点对点,精确)

二  类和对象

1、类是由众多对象抽象(归纳总结)出来的东西  代表所有对象的特性

例:

人类:身份证,姓名,年龄,性别,民族...    

植物类:光合作用,适宜的土质,适宜温度,茎,根...

2、对象是由累实例化出来的东西  具有自己的特点 真实存在的    一切皆对象

3、定义类

Class + 类名(首字母大写){}

例:

Class Ren

{

var $name;    --成员变量

var $age;

function eat()--成员方法或函数

{

}

}

4、实例化(类是抽象的,实例化以后可用)

$r =new Ren();    ----实例化一个人

$r ->(php中调用函数的符号)name=“张三”;  ----调用成员变量

$r->age =1;

var_dump($r);

输出结果   object(Ren)[1]

      public"name"=>string'张三' (length=6)

      public"age" => int  1

$r->eat();  ----调用成员方法

$r1-> =new Ren();  ---定义第二个人

$r2-> =new Ren();  ---定义第三个人

5、访问修饰符

public   公有的    一般为成员方法

privade  私有的  只能在该类访问    一般为成员变量

例:

Class Ren

{

  private  $name;        只能在 Class Ren 里访问

  public   $age;

  public function eat()

  {

  }

}

protected 受保护的,只能在该类或该类的子类访问

类中的 成员(名字)属于对象的(人)

关键字this 代表该对象 (谁调用就代表谁)不代表该类

例:

class Ren

{

 private $name;    

private $age=2;

 public function eat()  

{

 echo $this->age;          --- this代表该对象(谁调用ear()就代表该对象);不是该类

        }

}

$r = new Ren();

构造函数 强类型语言用  php不用

作用:造对象  主要用来进行变量的初始化  调用时给参数(和$name =''张三''类似)

不写亦存在只是看不到 默认public

写法特殊,执行时间特殊(创建函数时的时间)

函数名称和类名一致

例:

function Ren()     ----- 老式写法 可用

{

}

function __construct()    ---- 新式写法

{

}

原文地址:https://www.cnblogs.com/zhangbaobao/p/6723702.html