码迷,mamicode.com
首页 > Web开发 > 详细

php面向对象(一)---2017-04-17

时间:2017-04-17 11:37:04      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:修饰符   个人   cti   字母   访问   自己   this   php面向对象   定义类   

重点:定义类与实例化类;访问修饰符;构造函数

一、面向对象

面向对于与面向过程的主要区别在于:前者包含类和对象的概念   

二、类和对象   

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

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

3、定义类

       class 加类名(首字母大写){}

 eg:

class Ren

{

 var $name;      ----成员变量

 var $age;

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

 {

        }

}

4、实例化  (因为类是抽象的,不能直接用)

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

 $r ->name = "张三";   ---------调用成员变量

 $r->age = 1;

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

  $r1 = new Ren();-------实例化第二个人

  $r2 = new Ren();-------实例化第三个人

5、访问修饰符  非常重要   ( 成员变量一般都是private,成员方法一般都是public

(1)public  公开的

class Ren

{

 public $name;

 public $age;

 public function eat()  

{

        }

}

(2)protected  受保护的   只能在该类和该类的子类里访问

(3)private 私有的  只能在该类访问

class Ren

{

 private $name;    

private $age=2;

 public function eat()  

{

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

        }

}

$r = new Ren();

三、构造函数无论写不写都存在,不写只是看不到而已)

用于初始化变量   默认为public

1、  特点

(1)写法特殊

     function 类名(){}      -----------以前用的,现在用也没错

     function__construct(){}     ------------现在用的

(2)执行时间特殊   -----------在实例化时就执行

Eg1:

class Ren

{

private $sex="男"; 

function __construct()

 {

        $this->sex;

        }             

 public function eat()  

{

        }

}

$r = new Ren();

$r->eat();

Eg2:带参数

class Ren

{

private $sex; 

function __construct($s)

 {

        $this->sex=$s;

        }             

 public function eat()  

{

        }

}

$r = new Ren(“女”);  

$r->eat();

 

php面向对象(一)---2017-04-17

标签:修饰符   个人   cti   字母   访问   自己   this   php面向对象   定义类   

原文地址:http://www.cnblogs.com/chenguanai/p/6721960.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!