用穿越火线快速入门php面向对象
2015-01-24信息快讯网
php目前已经成为国内的主流web developer的首选开发语言,其强大的面向对象容易使初学者找不到思绪,一头雾水,借助此文希望对初学者有所帮助,假设Crossfire用php来开发
<?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; //克隆操作表示所有玩家都使用此类! ?>
Window下PHP三种运行方式图文详解
控制PHP的输出:缓存并压缩动态页面
基于PHP导出Excel的小经验 完美解决乱码问题
win7+apache+php+mysql环境配置操作详解
浅谈php中mysql与mysqli的区别分析
深入理解:XML与对象的序列化与反序列化
深入分析使用mysql_fetch_object()以对象的形式返回查询结果
深入分析php之面向对象
PHP笔记之:基于面向对象设计的详解
基于PHP 面向对象之成员方法详解
php学习笔记之面向对象编程
PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
php模拟post行为代码总结(POST方式不是绝对安全)
php重定向的三种方法分享
php中echo()和print()、require()和include()等易混淆函数的区别
我的php学习笔记(毕业设计)
PHP中运用jQuery的Ajax跨域调用实现代码
修改PHP的memory_limit限制的方法分享
PHP高级对象构建 多个构造函数的使用
PHP高级对象构建 工厂模式的使用
PHP对象转换为数组函数(递归方法)
PHP面向对象概念
PHP将DateTime对象转化为友好时间显示的实现代码
php学习笔记 面向对象中[接口]与[多态性]的应用
php学习笔记 php中面向对象三大特性之一[封装性]的应用
php学习笔记 面向对象的构造与析构方法
php学习笔记 PHP面向对象的程序设计