当前位置:首页 > PHP教程 > php面向对象 > 列表

PHP面向对象程序设计实例分析

发布:smiling 来源: PHP粉丝网  添加日期:2021-07-07 13:33:06 浏览: 评论:0 

本文实例分析了PHP面向对象程序设计方法,分享给大家供大家参考,具体如下:

在对超大型项目的开发过程中,如果使用面向过程地开发,代码量是非常的庞大,这将大量的用到判断和循环嵌套,和很多很相似的代码,不仅使项目代码量更加的庞大,还不利于开发,重用及维护。

面向对象就能很好的解决这个问题,面向对象很好的封装性,节省了很多精力,不用关心对象内部的运作,只要关心对象与对象之间的交互,便于维护,而继承性使得代码大量地精简。

我们先来看一个题目:

例:张三是一位普通人,别人早晨向他打招呼,他会说“早上好”,但是有一天他被车撞了,脑子受了一点伤,因此,别人早晨向他打招呼时,他有时会说:“早上好”,但有时会说:“晚上好”,甚至辱骂对方。

分析:因为现在要面向对象,那我们先把对象拿出来

对象1:张三(人)   智商(名称是属性)   打招呼(动词是方法)

对象2:车子  撞人(动词是方法)

  1. <?php  
  2. //创建一个human类,类是对象的实例(工厂里的模子) 
  3. class human{ 
  4.   //普通人的iq为100 
  5.   public $iq = 100; 
  6.   //打招呼,早上看到人就早上好 
  7.   public function greet(){ 
  8.     echo '早上好'
  9.   } 
  10. //实例化一个对象李四 
  11. $lisi = new human(); 
  12. $lisi->greet(); 
  13. //返回早上好  
  14. ?> 

这个是实例化一个正常的李四

下面来看被车子撞了的李四

  1. <?php  
  2. //创建一个human类,类是对象的实例(工厂里的模子) 
  3. class human{ 
  4.   //普通人的iq为100 
  5.   public $iq = 100; 
  6.   //打招呼,早上看到人就早上好 
  7.   public function greet(){ 
  8.     //当智商大于等于100 
  9.     if($this->iq>=100){ 
  10.       echo '早上好','<br />'
  11.     }else
  12.       //当智商小于100,随机出现以下问候 
  13.       $regard = array('早上好','晚上好','混蛋'); 
  14.       echo $regard[rand(0,2)],'<br />'
  15.     } 
  16.   } 
  17. //实例化一个对象李四 
  18. $lisi = new human(); 
  19. $lisi->greet(); 
  20. //返回早上好  
  21. class car{ 
  22.   public function hit($people){ 
  23.     //撞了以后人的智商随机出现了变化 
  24.     $people->iq=rand(40,120); 
  25.   } 
  26. //实例化一辆宝马车子 
  27. $baoma = new car(); 
  28. //宝马车子撞人了 
  29. $baoma->hit($lisi); 
  30. //撞人之后人的智商 
  31. echo $lisi->iq,'<br />'
  32. //人的根据智商的多少,问候也不相同 
  33. $lisi->greet(); 
  34. ?>

Tags: PHP面向对象程序设计

分享到: