|
<?php
/*
*用穿越火線快速入門php面向?qū)ο?
*php目前已經(jīng)成為國(guó)內(nèi)的主流web developer的首選開發(fā)語(yǔ)言,其強(qiáng)大的面向?qū)ο笕菀资钩鯇W(xué)者找不到思緒,一頭霧水!
*,借助此文希望對(duì)初學(xué)者有所幫助,假設(shè)Crossfire用php來(lái)開發(fā).
* 1類與對(duì)象
*/
class Crossfire
{
public $Category='1,2,3'; //槍械種類,3個(gè)選擇武器類別
public $Weapon='ak|awp|m4a1';//購(gòu)買的武器,擁有的武器
public $Flashlight=true;//是否購(gòu)買閃光彈
public $Bomb=false; //購(gòu)買了閃光同等條件下不能再次購(gòu)買手雷
function attack()
{
//攻擊的代碼 $this->Weapon;使用武器
}
function repair()
{
//修理武器的代碼
}
function destroy()
{
//武器壞了自動(dòng)銷毀代碼
}
/*
* 我們把cf看成是一個(gè)類,cf里面有主武器,副武器,槍械,刀類,彈物,防彈衣,噴圖等等..
* 以上都是類中的成員屬性,假如武器壞了,那么我們就得維修,維修就是類的成員方法!
* 每種槍械都有不同的威力,不同的子彈數(shù)量,大小不同但是都是武器類,這是類和對(duì)象的關(guān)系(類的實(shí)例化結(jié)果就是對(duì)象)。
*
*/
function __construct()
{
//武器維修 $this->repair();
}
function __destruct()
{
//武器超過(guò)耐久自動(dòng)消失 $this->destroy();
}
private function buy()
{
//購(gòu)買武器私有屬性代碼
}
private function __get()
{
//調(diào)用購(gòu)買的武器代碼
}
private function __set()
{
//給買的武器購(gòu)買子彈數(shù)量代碼
}
private function __isset()
{
//檢查錢數(shù)是夠購(gòu)買子彈數(shù)
}
private function __unset()
{
//如果中途死亡自動(dòng)掉落武器
}
}
class role extends Crossfire
{
//個(gè)人角色繼承cf的屬性,角色可以使用購(gòu)買,銷毀上面的物品
function attack()
{
Crossfire::attack();
$this->Weapon='awm-a';
//如果中途換槍,加入換槍的彈量,傷害!
}
final function vip()
{
//購(gòu)買vip,final關(guān)鍵字是禁止方法和屬性繼承!vip是需要money購(gòu)買,所以因此不能被繼承!
}
public static $awm=100;//awm 傷害是固定的所以用靜態(tài)
public static function awm()
{
self::$awm;//awm攻擊代碼,self調(diào)用靜態(tài). 方法的重載
}
public function __toString()
{
return $this->repair(); //自動(dòng)返回武器維修的費(fèi)用
}
}
interface map
{
//地圖代碼,一個(gè)子類只能繼承一次父類,地圖是每個(gè)玩家都要用的,顯而意見(jiàn)繼承是不能夠滿足需求的,接口為我們解決瓶頸!
public function map1()
{
//黑色城鎮(zhèn)
}
function map2()
{
//運(yùn)輸船
}
}
interface vipmap extends map
{
//如果是會(huì)員就顯示會(huì)員地圖,繼承接口總地圖
function _vipmap()
{
//vip建圖顏色先是紅色
}
function _vipmap1()
{
}
}
$cf=new Crossfire();
echo $cf->Weapon;//輸出擁有的武器!
/*
* $對(duì)象名稱= new 類名稱();
創(chuàng)建新類我們使用new,我們新創(chuàng)建了一個(gè)cf類,$cb就是Crossfire的對(duì)象!
&nb
sp; 多態(tài)的應(yīng)用,抽象類沒(méi)有講,當(dāng)然一個(gè)完整的游戲是不可能從此簡(jiǎn)單的,只是做個(gè)比喻!
*/
$cf2=clone $cf; //克隆操作表示所有玩家都使用此類!
?>
php技術(shù):用穿越火線快速入門php面向?qū)ο?/a>,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。