用穿越火线快速入门php面向对象


Posted in PHP onFebruary 22, 2012
<?php 
/* 
*用穿越火线快速入门php面向对象! 
*php目前已经成为国内的主流web developer的首选开发语言,其强大的面向对象容易使初学者找不到思绪,一头雾水! 
*,借助此文希望对初学者有所帮助,假设Crossfire用php来开发. 
* 1类与对象 
*/ 
class Crossfire 
{ 
public $Category='1,2,3'; //枪械种类,3个选择武器类别 
public $Weapon='ak|awp|m4a1';//购买的武器,拥有的武器 
public $Flashlight=true;//是否购买闪光弹 
public $Bomb=false; //购买了闪光同等条件下不能再次购买手雷 
function attack() 
{ 
//攻击的代码 $this->Weapon;使用武器 
} 
function repair() 
{ 
//修理武器的代码 
} 
function destroy() 
{ 
//武器坏了自动销毁代码 
} 
/* 
* 我们把cf看成是一个类,cf里面有主武器,副武器,枪械,刀类,弹物,防弹衣,喷图等等.. 
* 以上都是类中的成员属性,假如武器坏了,那么我们就得维修,维修就是类的成员方法! 
* 每种枪械都有不同的威力,不同的子弹数量,大小不同但是都是武器类,这是类和对象的关系(类的实例化结果就是对象)。 
* 
*/ 
function __construct() 
{ 
//武器维修 $this->repair(); 
} 
function __destruct() 
{ 
//武器超过耐久自动消失 $this->destroy(); 
} 
private function buy() 
{ 
//购买武器私有属性代码 
} 
private function __get() 
{ 
//调用购买的武器代码 
} 
private function __set() 
{ 
//给买的武器购买子弹数量代码 
} 
private function __isset() 
{ 
//检查钱数是够购买子弹数 
} 
private function __unset() 
{ 
//如果中途死亡自动掉落武器 
} 
} 
class role extends Crossfire 
{ 
//个人角色继承cf的属性,角色可以使用购买,销毁上面的物品 
function attack() 
{ 
Crossfire::attack(); 
$this->Weapon='awm-a'; 
//如果中途换枪,加入换枪的弹量,伤害! 
} 
final function vip() 
{ 
//购买vip,final关键字是禁止方法和属性继承!vip是需要money购买,所以因此不能被继承! 
} 
public static $awm=100;//awm 伤害是固定的所以用静态 
public static function awm() 
{ 
self::$awm;//awm攻击代码,self调用静态. 方法的重载 
} 
public function __toString() 
{ 
return $this->repair(); //自动返回武器维修的费用 
} 
} 
interface map 
{ 
//地图代码,一个子类只能继承一次父类,地图是每个玩家都要用的,显而意见继承是不能够满足需求的,接口为我们解决瓶颈! 
public function map1() 
{ 
//黑色城镇 
} 
function map2() 
{ 
//运输船 
} 
} 
interface vipmap extends map 
{ 
//如果是会员就显示会员地图,继承接口总地图 
function _vipmap() 
{ 
//vip建图颜色先是红色 
} 
function _vipmap1() 
{ 
} 
} 
$cf=new Crossfire(); 
echo $cf->Weapon;//输出拥有的武器! 
/* 
* $对象名称= new 类名称(); 
创建新类我们使用new,我们新创建了一个cf类,$cb就是Crossfire的对象! 
&nb 
sp; 多态的应用,抽象类没有讲,当然一个完整的游戏是不可能从此简单的,只是做个比喻! */ 
$cf2=clone $cf; //克隆操作表示所有玩家都使用此类! 
?>
PHP 相关文章推荐
php Sql Server连接失败问题及解决办法
Aug 07 PHP
php使用Smarty的相关注意事项及访问变量的几种方式
Dec 08 PHP
浅谈php和.net的区别
Sep 28 PHP
php中JSON的使用方法
Apr 30 PHP
php中smarty实现多模版网站的方法
Jun 11 PHP
简单谈谈PHP中strlen 函数
Feb 27 PHP
Thinkphp批量更新数据的方法汇总
Jun 29 PHP
PHP CURL采集百度搜寻结果图片不显示问题的解决方法
Feb 03 PHP
浅谈PHP中的面向对象OOP中的魔术方法
Jun 12 PHP
使用 laravel sms 构建短信验证码发送校验功能
Nov 06 PHP
ThinkPHP5.0多个文件上传后找不到临时文件的修改方法
Jul 30 PHP
thinkphp框架使用JWTtoken的方法详解
Oct 10 PHP
php重定向的三种方法分享
Feb 22 #PHP
php中echo()和print()、require()和include()等易混淆函数的区别
Feb 22 #PHP
我的php学习笔记(毕业设计)
Feb 21 #PHP
PHP中运用jQuery的Ajax跨域调用实现代码
Feb 21 #PHP
修改PHP的memory_limit限制的方法分享
Feb 21 #PHP
php中取得文件的后缀名?
Feb 20 #PHP
ThinkPHP写第一个模块应用
Feb 20 #PHP
You might like
php中通过虚代理实现延迟加载的实现代码
2011/06/10 PHP
PHP错误Parse error: syntax error, unexpected end of file in test.php on line 12解决方法
2014/06/23 PHP
PHP和Mysql中转UTF8编码问题汇总
2015/10/10 PHP
PHP转换文本框内容为HTML格式的方法
2016/07/20 PHP
BOOTSTRAP时间控件显示在模态框下面的bug修复
2015/02/05 Javascript
javascript实现一个数值加法函数
2015/06/26 Javascript
jQuery插件cxSelect多级联动下拉菜单实例解析
2016/06/24 Javascript
Vue常用指令V-model用法
2017/03/08 Javascript
Scala解析Json字符串的实例详解
2017/10/11 Javascript
Vue项目打包压缩的实现(让页面更快响应)
2020/03/10 Javascript
jQuery实现鼠标拖拽登录框移动效果
2020/09/13 jQuery
Vue实现随机验证码功能
2020/12/29 Vue.js
python实现根据图标提取分类应用程序实例
2014/09/28 Python
Python __setattr__、 __getattr__、 __delattr__、__call__用法示例
2015/03/06 Python
Django框架中方法的访问和查找
2015/07/15 Python
Python DataFrame.groupby()聚合函数,分组级运算
2018/09/18 Python
python退出命令是什么?详解python退出方法
2018/12/10 Python
python 实现矩阵上下/左右翻转,转置的示例
2019/01/23 Python
python实现超市管理系统(后台管理)
2019/10/25 Python
python3实现用turtle模块画一棵随机樱花树
2019/11/21 Python
Python关于__name__属性的含义和作用详解
2020/02/19 Python
python实现密码强度校验
2020/03/18 Python
基于Python把网站域名解析成ip地址
2020/05/25 Python
python爬虫调度器用法及实例代码
2020/11/30 Python
举例详解CSS3中的Transition
2015/07/15 HTML / CSS
用css3写出气球样式的示例代码
2017/09/11 HTML / CSS
俄罗斯在线水暖商店:Perfecto.ru
2019/10/25 全球购物
农民工工资承诺书范文
2014/03/31 职场文书
无犯罪记录证明
2014/09/19 职场文书
2014年职称评定工作总结
2014/11/26 职场文书
2014年财务个人工作总结
2014/12/08 职场文书
电气工程师岗位职责
2015/02/12 职场文书
2015年安全保卫工作总结
2015/05/14 职场文书
交通事故代理词范文
2015/05/23 职场文书
副校长2015年教育教学工作总结
2015/07/27 职场文书
基于Go语言构建RESTful API服务
2021/07/25 Golang