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

yipeiwu_com6年前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; //克隆操作表示所有玩家都使用此类!
?>

相关文章

PHP读取Excel类文件

PHP读取Excel类文件

想要使用PHP读取Excel文件必然要用到PHPExcel开源类库,网上资源应该挺多的。但是每一种的操作必然都是不同的,可原理应该都是大同小异。 这个文件夹里包含的就是PHPExcel类...

php self,$this,const,static,-&amp;gt;的使用

今天来总结下。 、在类的内部方法访问已经声明为const及static的属性时,使用self::$name的形式。注意的是const属性的申明格式,const PI=3.14,而不是co...

浅析十款PHP开发框架的对比

PHP开发框架近来在PHP社区中成为讨论的热点,几乎每天都在推出新的框架。面对市面上超过四十种的开发框架,你很难判断究竟哪一款最适合你,尤其是在这些框架所提供的功能不尽相同的时候。&nb...

windows下升级PHP到5.3.3的过程及注意事项

windows下升级PHP到5.3.3的过程及注意事项

就升级了本地的开发环境,没有涉及到生产环境.其实从5.3.0升级到5.3.3的过程还算蛮简单的,就是修改自己的程序有点麻烦,遇到了个小问题就是升级后竟然自己的项目无法连接mysql了,原...

php计算两个日期相差天数的方法

本文实例讲述了php计算两个日期相差天数的方法。分享给大家供大家参考。具体实现方法如下: <?php /** * 求两个日期之间相差的天数 * (针对1970年1月...