分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

PHP 类工厂模式

发布时间:2023-09-06 01:16责任编辑:赖小花关键词:PHP

<?php
/**
*工厂模式就是一种类,具有为您创建对象的某些方法,这样就可以使用工厂类创建对象,而不直接使用new。这样如果想更改创建的对象类型,只需更改工厂即可
*/

class Factory
{
???public static function create($type)
???{
???????switch ($type) {
???????????case ‘rect‘:
???????????????return new Rect();
???????????????break;
???????????case ‘triangle‘:
???????????????return new Triangle();
???????????????break;
???????????case ‘circular‘:
???????????????return new Circular();
???????????????break;
???????????defalut: ?
???????????????return null; ???????????????
???????????????break;
???????}
???}
}

abstract class Shape
{
???abstract public function Area();
}

class Rect extends Shape
{
???private $width;
???private $height;

???public function Area(){

???}

???public function __toString(){
???????return "矩形";
?????}
}

class Triangle extends Shape
{
???private $side1;
???private $side2;
???private $side3;

???public function Area(){

???}

?????public function __toString(){
???????return "三角形";
?????}
}

class Circular extends Shape
{
???private $radius;
???const PAI = 3.14;

???public function Area(){

???}

???public function __toString(){
???????return "圆形";
?????}
}

$obj = Factory::create(‘rect‘);

if($obj instanceof Shape){
echo $obj;
}else{
???exit("没有这个形状");
}

PHP 类工厂模式

原文地址:http://www.cnblogs.com/kuku2/p/7650090.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved