首页 > 编程语言 >建造者模式(描述语言PHP)

建造者模式(描述语言PHP)

时间:2022-12-07 16:01:56浏览次数:37  
标签:function builder 描述语言 建造 method Implement PHP TODO public

Builder 模式强调的是一步步创建对象,并通过相同的创建过程可以获
得不同的结果对象,一般来说 Builder 模式中对象不是直接返回的。

 

<?php

/**
* 建造者模式
*
* 将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。
*/
class BuilderModern
{
public function buildHead(){}
public function buildBody(){}
public function buildLeftArm(){}
public function buildRightArm(){}
public function buildLeftLeg(){}
public function buildRightLeg(){}
}
// 构建一个高个子的
class HeigthPeople extends BuilderModern
{
public function buildBody()
{
// TODO: Implement buildBody() method.
}

public function buildLeftArm()
{
// TODO: Implement buildLeftArm() method.
}

public function buildHead()
{
// TODO: Implement buildHead() method.
}

public function buildRightArm()
{
// TODO: Implement buildRightArm() method.
}

public function buildLeftLeg()
{
// TODO: Implement buildLeftLeg() method.
}

public function buildRightLeg()
{
// TODO: Implement buildRightLeg() method.
}

}
// 构建一个矮个子的
class ShortPeople extends BuilderModern
{
public function buildBody()
{
// TODO: Implement buildBody() method.
}

public function buildLeftArm()
{
// TODO: Implement buildLeftArm() method.
}

public function buildHead()
{
// TODO: Implement buildHead() method.
}

public function buildRightArm()
{
// TODO: Implement buildRightArm() method.
}

public function buildLeftLeg()
{
// TODO: Implement buildLeftLeg() method.
}

public function buildRightLeg()
{
// TODO: Implement buildRightLeg() method.
}

}

class Manage
{
public $builder = null;
public function __construct(Builder $builder)
{
$this->builder = new $builder();
}

public function create()
{
$this->builder->buildHead();
$this->builder->buildBody();
$this->builder->buildLeftArm();
$this->builder->buildRightArm();
$this->builder->buildLeftLeg();
$this->builder->buildRightLeg();
}
}

标签:function,builder,描述语言,建造,method,Implement,PHP,TODO,public
From: https://www.cnblogs.com/wmzll/p/11091259.html

相关文章

  • PHP扩展 Opcache工作原理
    PHP工作原理首先,我们先了解下解释型语言PHP的工作原理,这有利于我们了解PHPOpcache。对于PHP,我们常用的是cli模式和php-fpm模式。下面我们拿cli模式来描述下php执行脚本......
  • P8867 NOIP2022 建造军营
    P8867NOIP2022建造军营-洛谷|计算机科学教育新生态(luogu.com.cn)。给定一个无向联通图\(G=(V',E')\),求有多少个二元组\((V,E)\),满足:\(V\subseteqV'\),\(......
  • 04.(创建型模式)java设计模式之建造者模式
    一、什么是建造者模式使⽤多个简单的对象⼀步⼀步构建成⼀个复杂的对象,将⼀个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。允许⽤户只通过指定......
  • NOIP2022 T3 建造军营
    只有B国炸毁了图的割边,才会使得图不连通,进而可能会导致军营不连通。也就是说,A国可以随意地看守或不看守不是割边的边。因此想到边双缩点后树形DP。为什么边双缩点后会......
  • php-fpm进程过多,导致CPU过高
    今天发现服务器的php-fpm进程突然过多,导致CPU过高,其他项目的访问受到影响。我通过以下三个基本步骤定位到了问题,发现了其原因。 基本步骤:先用top命令查看进程情况,找出......
  • php的pdo库使用总结
    <?phptry{$dsn="mysql:host=127.0.0.1;port=3306;dbname=test;charset=utf8";$user="root";$password="";#持久连接$pdo=newPDO($ds......
  • php中缩略图的问题
    以往在PHP中用缩略图上传,一直没留意到一个问题,就是:即使图片不大,比如不超过500K,但实际上在缩略图时,要占用很大的内存资源的,比如一张1600*1200*24B的图......
  • 安装phpStudy后报错:Warning: session_start()...” 的解决方法
    在使用phpstudy的时候遇到以下报错:Warning:session_start():open(C:/ProgramFiles/php/sessiontemp\sess_0cde28de3ce1a2e2cc8e8723b5a40279,O_RDWR)failed:Permiss......
  • 查找linux下进程占用CPU过高的原因,以php-fpm为例
    很多时候,线上服务器的进程在某时间段内长时间占用CPU过高,为了优化,我们需要找出原因。1、找出占用CPU最高的10个进程psaux|sort-k3nr|head-n10或查看占用内存最高的1......
  • php版高校宿舍管理系统源码(文末有下载方式)
    大家好,我是程序猿零壹。分享一款高校宿舍管理系统,该系统使用php+mysql开发,实现了学生宿舍管理的功能模块,包含学生管理、楼宇管理、宿舍管理、宿舍分配,物品出入登记、来访......