PHP面向接口编程 耦合设计模式 简单范例


Posted in PHP onMarch 23, 2011
<?php 
interface js{ 
function ys($a,$b); 
} 
class Af implements js{ 
function ys($a,$b){ 
return "加法运算......结果为:".($a+$b); 
} 
} 
class Jf implements js{ 
function ys($a,$b){ 
return "减法运算......结果为:".($a-$b); 
} 
} 
class AAf implements js{ 
function ys($a,$b){ 
return "乘法运算......结果为:".($a*$b); 
} 
} 
class JJf implements js{ 
function ys($a,$b){ 
return "除法运算......结果为:".($a/$b); 
} 
} 
class Modf implements js{ 
function ys($a,$b){ 
return "取模运算......结果为:".($a % $b); 
} 
} 
class China implements js{ 
public $varl=null;//这里直接:public $varl = new nothingx(); 会出错。 
function __construct(){ 
$this->varl = new nothingx(); 
} 
function ys($a,$b){ 
return $this->varl->say(); 
} 
} 
/*也可以用继承的方式实现哟: 
class China extends nothingx implements js{ 
function ys($a,$b){ 
return parent::say(); 
} 
} 
*/ 
class nothingx{ 
function say(){ 
return "我什么运算都不做...只是为了实现<font color=#990000><b>‘耦合设计模式'</b></font>...我是出来打酱油的......"; 
} 
} 
class test{ 
private $one; 
private $two; 
public function __construct($x,$y){ 
$this->one=$x; 
$this->two=$y; 
echo "<font size=20px><strong>面向对象程序设计——接口</font></strong><hr>Class test初始化:<br>属性\$one=".$this->one."属性\$two=".$this->two."<hr>"; 
} 
function display(js $a){ 
return "<font color=#990000><b>用PHP接口技术实现的运算——开始运算啦:</b></font><hr>".$a->ys($this->one,$this->two)."<hr>"; 
} 
} 
$t=new test(103,2); 
$t1=new jf; 
$t2=new China; 
echo $t->display($t1); 
echo $t->display($t2); 
?>
PHP 相关文章推荐
PHP 替换模板变量实现步骤
Aug 24 PHP
Drupal7连接多个数据库及常见问题解决
Mar 02 PHP
解密ThinkPHP3.1.2版本之模板继承
Jun 19 PHP
合并ThinkPHP配置文件以消除代码冗余的实现方法
Jul 22 PHP
ThinkPHP有变量的where条件分页实例
Nov 03 PHP
php中Socket创建与监听实现方法
Jan 05 PHP
php运行时动态创建函数的方法
Mar 16 PHP
详解PHP实现执行定时任务
Dec 21 PHP
功能强大的PHP POST提交数据类
Jul 15 PHP
Yii2框架实现利用mpdf创建pdf文件功能示例
Feb 08 PHP
浅谈PHP无限极分类原理
Mar 14 PHP
浅析PHP echo 和 print 语句
Jun 30 PHP
PHP中用接口、抽象类、普通基类实现“面向接口编程”与“耦合方法”简述
Mar 23 #PHP
php中取得URL的根域名的代码
Mar 23 #PHP
PHP+JS+rsa数据加密传输实现代码
Mar 23 #PHP
PHP 事件机制(2)
Mar 23 #PHP
php函数之子字符串替换&amp;#65279; str_replace
Mar 23 #PHP
php expects parameter 1 to be resource, array given 错误
Mar 23 #PHP
php去掉字符串的最后一个字符附substr()的用法
Mar 23 #PHP
You might like
阿拉伯的咖啡与水烟
2021/03/03 咖啡文化
php下获取Discuz论坛登录用户名、用户组、用户ID等信息的实现代码
2010/12/29 PHP
PHP spl_autoload_register实现自动加载研究
2011/12/06 PHP
php 变量引用与变量销毁机制详细介绍
2016/12/05 PHP
docker-compose部署php项目实例详解
2019/07/30 PHP
《JavaScript高级程序设计》阅读笔记(三) ECMAScript中的引用类型
2012/02/27 Javascript
JavaScript 学习笔记之操作符
2015/01/14 Javascript
深入理解JavaScript的React框架的原理
2015/07/02 Javascript
JS实现可自定义大小,可双击关闭的弹出层效果
2015/10/16 Javascript
理解javascript中的with关键字
2016/02/15 Javascript
jquery遍历table的tr获取td的值实现方法
2016/05/19 Javascript
Javascript中常用的检测方法小结
2016/10/08 Javascript
easyui datagrid 大数据加载效率慢,优化解决方法(推荐)
2016/11/09 Javascript
JS变量中有var定义和无var定义的区别以及es6中let命令和const命令
2017/02/19 Javascript
使用Math.max,Math.min获取数组中的最值实例
2017/04/25 Javascript
深入理解Vue 单向数据流的原理
2017/11/09 Javascript
vue实现一个炫酷的日历组件
2018/10/08 Javascript
Node.js动手撸一个静态资源服务器的方法
2019/03/09 Javascript
vue基础之事件v-onclick=&quot;函数&quot;用法示例
2019/03/11 Javascript
一文了解Vue中的nextTick
2019/05/06 Javascript
微信小程序封装的HTTP请求示例【附升级版】
2019/05/11 Javascript
VueCli4项目配置反向代理proxy的方法步骤
2020/05/17 Javascript
[38:51]2014 DOTA2国际邀请赛中国区预选赛 Orenda VS LGD-CDEC
2014/05/22 DOTA
python中元类用法实例
2014/10/10 Python
提升Python效率之使用循环机制代替递归函数
2019/07/23 Python
numpy 矩阵形状调整:拉伸、变成一位数组的实例
2020/06/18 Python
Python容器类型公共方法总结
2020/08/19 Python
python实现学生信息管理系统(精简版)
2020/11/27 Python
CSS超出文本指定宽度用省略号代替和文本不换行
2016/05/05 HTML / CSS
HTML5 Canvas实现玫瑰曲线和心形图案的代码实例
2014/04/10 HTML / CSS
IE支持HTML5的解决方法
2009/10/20 HTML / CSS
用canvas显示验证码的实现
2020/04/10 HTML / CSS
专注澳大利亚特产和新西兰特产的澳洲中文网:0061澳洲制造
2019/03/24 全球购物
劳模事迹材料范文
2014/12/24 职场文书
工程项目经理岗位职责
2015/02/02 职场文书
高中生物教学反思
2016/02/20 职场文书