php (十一) 面向对象 通过类实例化对象

浏览:
字体:
发布时间:2013-12-09 23:24:03
来源:
1. 实例化对象
 
 
 
当定义好类后,我们使用new关键字来生成一个对象。
 $对象名称 = new  类名称();
示例: 
 
  
[php] 
<span style="color:#333333;"><?php  
class Person  
{  
//下面是人的成员属性  
var $name;     //人的名子  
   
var $sex;      //人的性别  
var $age;      //人的年龄  
//下面是人的成员方法  
function say() //这个人可以说话的方法  
{  
echo "这个人在说话";  
}  
function run() //这个人可以走路的方法  
{  
echo "这个人在走路";  
}  
}  
$p1=new Person();  
$p2=new Person();  
   
  
?></span><span style="color:#ff0000;">  
  
</span>  
 
2. 访问对象中的成员
  $p1=new Person();  怎么去使用对象的成员呢?要想访问对象中的成员就要使用一个特殊的操作符“->”来完成对象成员的访问,类似于 java里面的 " . " 
  示例:
  
[php] 
<?php  
class Person  
{  
//下面是人的成员属性  
var $name;      //人的名子  
var $sex;       //人的性别  
var $age;       //人的年龄  
//下面是人的成员方法  
function say() //这个人可以说话的方法  
{  
echo "这个人在说话";  
}  
function run() //这个人可以走路的方法  
{  
echo "这个人在走路";  
}  
}  
$p1=new Person(); //创建实例对象$p1  
$p2=new Person(); //创建实例对象$p2  
$p3=new Person(); //创建实例对象$p3  
//下面三行是给$p1对象属性赋值  
$p1->name=”张三”;  
$p1->sex=”男”;  
$p1->age=20;  
//下面三行是访问$p1对象的属性  
echo “p1对象的名子是:”.$p1->name.”<br>”;  
echo “p1对象的性别是:”.$p1->sex.”<br>”;  
echo “p1对象的年龄是:”.$p1->age.”<br>”;  
//下面两行访问$p1对象中的方法  
$p1->say();  
   
$p1->run();  
//下面三行是给$p2对象属性赋值  
$p2->name=”李四”;  
$p2->sex=”女”;  
$p2->age=30;  
//下面三行是访问$p2对象的属性  
echo “p2对象的名子是:”.$p2->name.”<br>”;  
echo “p2对象的性别是:”.$p2->sex.”<br>”;  
echo “p2对象的年龄是:”.$p2->age.”<br>”;  
//下面两行访问$p2对象中的方法  
$p2->say();  
$p2->run();  
//下面三行是给$p3对象属性赋值  
$p3->name=”王五”;  
$p3->sex=”男”;  
$p3->age=40;  
   
//下面三行是访问$p3对象的属性  
echo “p3对象的名子是:”.$p3->name.”<br>”;  
echo “p3对象的性别是:”.$p3->sex.”<br>”;  
echo “p3对象的年龄是:”.$p3->age.”<br>”;  
//下面两行访问$p3对象中的方法  
$p3->say();  
$p3->run();  
?>  
 
3. 特殊的引用“$this”的使用
 
PHP里面给我提供了一个本对象的引用$this,每个对象里面都有一个对象的引用$this来代表这个对象,完成对象内部成员的调用, this的本意就是“这个”的意思,上面的实例里面,我们实例化三个实例对象$P1、 $P2、 $P3,这三个对象里面各自存在一个$this分别代表对象$p1、$p2、$p3 。
  
$this就是对象内部代表这个对象的引用,在对象内部和调用本对象的成员和对象外部调用对象的成员所使用的方式是一样的。
$this->属性    $this->name;          $this->age;  $this->sex;
              $this->方法  $this->say();            $this->run();
 
 示例:
[php]  
<?php  
class Person  
{  
//下面是人的成员属性  
var $name;      //人的名子  
var $sex;       //人的性别  
var $age;       //人的年龄  
//下面是人的成员方法  
function say() //这个人可以说话的方法  
{  
   
echo "我的名子叫:".$this->name." 性别:".$this->sex." 我的年龄是:".$this->age."<br>";  
}  
function run() //这个人可以走路的方法  
{  
echo "这个人在走路";  
}  
}  
$p1=new Person(); //创建实例对象$p1  
$p2=new Person(); //创建实例对象$p2  
$p3=new Person(); //创建实例对象$p3  
//下面三行是给$p1对象属性赋值  
$p1->name="张三";  
$p1->sex="男";  
$p1->age=20;  
//下面访问$p1对象中的说话方法  
$p1->say();  
//下面三行是给$p2对象属性赋值  
$p2->name="李四";  
$p2->sex="女";  
$p2->age=30;  
//下面访问$p2对象中的说话方法  
$p2->say();  
//下面三行是给$p3对象属性赋值  
$p3->name="王五";  
$p3->sex="男";  
$p3->age=40;  
//下面访问$p3对象中的说话方法  
$p3->say();  
?>  
 
输出结果为:
我的名子叫:张三性别:男我的年龄是:20
我的名子叫:李四性别:女我的年龄是:30
我的名子叫:王五性别:男我的年龄是:40
 
>更多相关文章
24小时热门资讯
24小时回复排行
资讯 | QQ | 安全 | 编程 | 数据库 | 系统 | 网络 | 考试 | 站长 | 关于东联 | 安全雇佣 | 搞笑视频大全 | 微信学院 | 视频课程 |
关于我们 | 联系我们 | 广告服务 | 免责申明 | 作品发布 | 网站地图 | 官方微博 | 技术培训
Copyright © 2007 - 2024 Vm888.Com. All Rights Reserved
粤公网安备 44060402001498号 粤ICP备19097316号 请遵循相关法律法规
');})();