类的继承关系实例

<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2015/11/23
* Time: 11:14
* 类的继承关系实例
*/

//建筑类
class building
{
function fly()
{
//建筑飞行的代码
echo "飞起来了<br>";
}

function didanggongji()
{
//建筑飞行的代码
echo "抵挡攻击<br>";
}
}

//兵营类
class marineBuilding extends building
{
function createMarine()
{
//制造机枪兵的代码
echo "又抓了一个壮丁来了";
//同时飞起来
parent::didanggongji();
}
}

//坦克房类
class tankBuilding extends building
{
function createTank()
{
//制造坦克的代码
echo "又制造了一辆坦克";
}
}


$shibin1 = new marineBuilding();
$shibin1->createMarine();

echo "<hr>";

$tanke = new tankBuilding();
$tanke->fly();
$tanke->createTank();



class groundArmy
{
public $attackNumber = 5;
}

//机枪兵
class marine extends groundArmy
{
public $attackNumber = 10; //攻击力的数字
}

echo "<hr>";
$m1 = new marine();//新建一个机枪兵
echo $m1->attackNumber;//显示攻击力为10


//函数重载
class concealAbility
{
public $energy = 150;
//这个函数表示隐形的运行代码
function conceal()
{
//隐形的运行代码
echo "父类隐身代码";
}

}

//鬼兵类
class ghost extends concealAbility
{
public $energy = 150;
//这个函数表示隐形的运行代码
function conceal()
{
//隐形的运行代码
//减少鬼兵的能量,$this表示当前对象,也就是当前这个鬼兵
$this->energy -= 25;
}

}


//人类
class pelies extends concealAbility
{
//直接继承父类
}

//黑暗圣堂类
class DarkTemplar extends concealAbility
{
//这个函数表示隐形的运行代码
function conceal()
{
//隐形的运行代码,不影响能量
echo "黑暗圣堂隐身...";

}

}

//新建一个鬼兵
$g1 = new ghost();
//显示能量为150
echo "<hr>";
echo $g1->energy;
//鬼兵隐形
$g1->conceal();
//显示能量为125
echo $g1->energy;

//新建一个黑暗圣堂
$d1 = new DarkTemplar();
//黑暗圣堂隐形,他没有能量属性
$d1->conceal();


$pe1 = new pelies();
$pe1->conceal();
echo $pe1->energy;


echo "接口<br>";
原文地址:https://www.cnblogs.com/jiufen/p/4987976.html