<?php
/*
定义接口 其中有走路 攻击 寻找的方法
*/
interface GuaiShou
{
public function ZouLu();
public function GongJi();
public function XunZhao();
}
// 继承接口 的 人类
//
class RenLei implements GuaiShou
{
public function ZouLu()
{
echo ‘我是‘. RenLei::class . ‘,我用双脚走路<br>‘;
}
public function GongJi()
{
echo ‘我是‘. RenLei::class.‘,我用智慧攻击<br>‘;
}
public function XunZhao()
{
echo ‘我是‘. RenLei::class.‘,我用心寻找<br>‘;
}
}
// 继承接口 的 精灵
class JingLing implements GuaiShou
{
public function ZouLu()
{
echo ‘我是‘. JingLing::class.‘,我用双脚走路<br>‘;
}
public function GongJi()
{
echo ‘我是‘. JingLing::class.‘,我用法力攻击<br>‘;
}
public function XunZhao()
{
echo ‘我是‘. JingLing::class.‘,我用翅膀寻找<br>‘;
}
}
// 继承接口 的 兽族
class ShouZu implements GuaiShou
{
public function ZouLu()
{
echo ‘我是‘. ShouZu::class.‘,我用大腿走路<br>‘;
}
public function GongJi()
{
echo ‘我是‘. ShouZu::class.‘,我用大力攻击<br>‘;
}
public function XunZhao()
{
echo ‘我是‘. ShouZu::class.‘,我用蛮力寻找<br>‘;
}
}
// 继承接口 的 不死族
class BuSiZu implements GuaiShou
{
public function ZouLu()
{
echo ‘我是‘. BuSiZu::class.‘,我用大腿走路<br>‘;
}
public function GongJi()
{
echo ‘我是‘. BuSiZu::class.‘,我用大力攻击<br>‘;
}
public function XunZhao()
{
echo ‘我是‘. BuSiZu::class.‘,我用蛮力寻找<br>‘;
}
}
/*
创建工厂类
*/
class AFactory
{
// 静态的工厂方法 传入类型
// 将传入的类型赋值给类名变量
// 返回 new 类名变量
static function factory($type)
{
$className = $type;
return new $className;
}
}
// 调用:
// 工厂类下的工厂方法(传入类名)
// 调用方法
$ren = AFactory::factory(‘BuSiZu‘);
$ren->GongJi();本文出自 “你好我是森林” 博客,请务必保留此出处http://chensenlin.blog.51cto.com/10559465/1857493
原文地址:http://chensenlin.blog.51cto.com/10559465/1857493