PHP面向对象笔记 —— 107 面向对象的哲学
2018-03-30 22:00
417 查看
在学习面向对象前先来回顾下关于面向过程的例子:
/*
面向过程
从地址栏接收 gender性别参数 男/女
模拟商城迎宾的行为:
如顾客为男:则招呼“先生好”
如顾客为女:则招呼“女士好”
*/
面向对象的简单例子:
/*
倒霉的张三
张三是一位普通人,别人早晨向他打招呼,他会说“早上好”。
但是有一天他被车撞了,脑子受了一点伤,
因此,别人早晨向他打招呼时,
他有时会说:“早上好”,但有时会说:“晚上好”,甚至辱骂对方。
*/
/*
从这个例子中我们能看到的相关元素:
张三
张三的智商
张三打招呼
车
车撞人
*/
/*
张三是一个对象
车也是一个对象
张三有智商 —> 属性[名字]
张三能打招呼 —> 功能/方法[动词]
车能撞人 —> 功能/方法[动词]
*/
/*
面向过程
从地址栏接收 gender性别参数 男/女
模拟商城迎宾的行为:
如顾客为男:则招呼“先生好”
如顾客为女:则招呼“女士好”
*/
$g = $_GET['gender']; if($g == '男') { echo '先生好'; } else if ($g == '女') { echo '女士好'; } else { echo '妖猴!'; } echo '<br >';
面向对象的简单例子:
/*
倒霉的张三
张三是一位普通人,别人早晨向他打招呼,他会说“早上好”。
但是有一天他被车撞了,脑子受了一点伤,
因此,别人早晨向他打招呼时,
他有时会说:“早上好”,但有时会说:“晚上好”,甚至辱骂对方。
*/
/*
从这个例子中我们能看到的相关元素:
张三
张三的智商
张三打招呼
车
车撞人
*/
/*
张三是一个对象
车也是一个对象
张三有智商 —> 属性[名字]
张三能打招呼 —> 功能/方法[动词]
车能撞人 —> 功能/方法[动词]
*/
class Man { public $iq = 100; public function say() { $arr = array('早上好','晚上好','你妹啊'); if($this->iq >= 100) { echo $arr[0]; } else { $i = rand(0,2); echo $arr[$i]; } } } class Car { public function hit($people) { $newiq = rand(50,110); $people->iq = $newiq; } } $lisi = new Man(); $QQ = new Car(); $lisi->say(); echo '<br />'; // 撞击 $QQ->hit($lisi); echo $lisi->iq,'<br >'; $lisi->say(); echo '<br />'; $lisi->say(); echo '<br />'; $lisi->say(); echo '<br />';
相关文章推荐
- php面向对象视频笔记之第一章(面向对象基础)
- php面向对象视频笔记之第二章(面向对象初步)
- PHP面向对象学习笔记之二:生成对象的设计模式
- php学习笔记 面向对象中[接口]与[多态性]的应用
- php学习笔记------[PHP面向对象的程序设计]
- php学习笔记 PHP面向对象的程序设计
- php学习笔记 面向对象中[接口]与[多态性]的应用
- java语言面向对象笔记,在学习面向对象时应该理解掌握的原理-作者:逝秋
- php学习笔记 PHP面向对象的程序设计
- php面向对象笔记5 魔术方法
- PHP面向对象笔记 —— 119 公共及保护属性和方法的继承
- php学习笔记(三)面向对象高级实践
- PHP面向对象笔记 —— 120 构造函数的继承
- 【学习笔记】《深入PHP - 面向对象、模式与实践》(第3版)——第5章 对象工具
- php面向对象笔记6 类的重写和重载
- 我的php学习笔记(十九)php的面向对象开发(六)
- PHP面向对象笔记 —— 108 类与对象的概念
- PHP面向对象笔记 —— 121 public_protected_private权限控制详解
- PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
- PHP 面向对象程序设计(oop)学习笔记 (二) - 静态变量的属性和方法及延迟绑定