首頁 後端開發 php教程 簡單工廠模式之php實作 c#簡單工廠模式 工廠模式 java java簡單工廠模式實例

簡單工廠模式之php實作 c#簡單工廠模式 工廠模式 java java簡單工廠模式實例

Jul 29, 2016 am 08:54 AM
簡單工廠模式

	简单工厂模式又叫静态工厂方法模式,主要作用是通过一个简单工厂类来实例化(创建)各个类的对象,而不需要通过new来实例化对象。优点在于,工厂类中包含了一定的逻辑判断,会根据客户端的选择条件动态实例化相关的类。缺点在于,当需要增加新的功能类时,需要去修改工厂类。

以下内容以一个简单的计算器程序作为案例分析。第一步,定义Operation,是一个父类,有两个属性,表示用于计算的两个参数。

<?php
/*
* 计算类
*/
class Operation{
	private $numA=0;
	private $numB=0;
	public function setNumA($numA)
	{
		$this->numA=$numA;
	}

	public function getNumA()
	{
		return $this->numA;
	}

	public function setNumB($numB)
	{
		$this->numB=$numB;
	}

	public function getNumB()
	{
		return $this->numB;
	}
}
?>
登入後複製

第二步,定義一個接口,接口中聲明實現運算的方法

<?php
/*
*工厂接口
*/
interface InterOperate{
	function getResult();
}
?>
登入後複製

第三步,是一個加法運算類(省略減法類、乘法類、觸發類等)

<?php

/**
* 加法运算类
*/
include_once "IOperate.php";
include_once &#39;Operation.php&#39;;
class OperationAdd extends Operation implements InterOperate
{
	function getResult()
	{
		$result=$this->getNumA()+$this->getNumB();
		return $result;
	}
}

?>
登入後複製

最後,定義簡單工廠類,用於建立各種類別的物件實例。通常簡單工廠類別傳回的物件都有一個公共父類別。這個例子中的公共父類就是Operation類,加法類、減法類都是Operation的子類。

<?php
include_once "OperationAdd.php";
include_once "OperationMinus.php";
class SimpleFactory {
	static function createAdd()
	{
		return new OperationAdd;
	}

	static function createMinus()
	{
		return new OperationMinus;
	}
}

?>
登入後複製

客戶端程式碼如下:

<?php
/*
*	客户端代码
*/
include_once "OperationAdd.php";
include_once &#39;Operation.php&#39;;
include_once &#39;SimpleFactory.php&#39;;

$op=SimpleFactory::createAdd();
$op->setNumA(2);
$op->setNumB(4);
echo $op->getResult();

$om=SimpleFactory::createMinus();
$om->setNumA(45);
$om->setNumB(34);
echo "<br>";
echo $om->getResult();
?>
登入後複製

以上就介紹了簡單工廠模式之php實現,包括了簡單工廠模式方面的內容,希望對PHP教程有興趣的朋友有所幫助。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何在PHP中應用簡單工廠模式來提高程式碼的復用性 如何在PHP中應用簡單工廠模式來提高程式碼的復用性 Sep 05, 2023 pm 12:27 PM

如何在PHP中應用簡單工廠模式來提高程式碼的複用性簡單工廠模式(SimpleFactoryPattern)是一種常用的設計模式,可以在創建物件時提供一種統一的接口,以便根據不同的條件來創建不同的實例。這種模式可以有效降低程式碼的耦合度,提高程式碼的可維護性和重複使用性。在PHP中,我們可以利用簡單工廠模式來最佳化程式碼的結構和邏輯。理解簡單工廠模式簡單工廠模式由三個

如何透過PHP物件導向簡單工廠模式實現物件的版本控制與管理 如何透過PHP物件導向簡單工廠模式實現物件的版本控制與管理 Sep 06, 2023 pm 02:39 PM

如何透過PHP物件導向簡單工廠模式實現物件的版本控制和管理在開發大型的、複雜的PHP專案時,版本控制和管理是非常重要的一環。透過適當的設計模式,我們可以更好地管理和控制物件的創建和使用,從而提高程式碼的可維護性和擴展性。本文將介紹如何使用PHP物件導向簡單工廠模式來實現物件的版本控制與管理。簡單工廠模式是一種創建類別的設計模式,它透過一個工廠類別來實例化指定的對象

Java工廠模式的三種設計方法探究 Java工廠模式的三種設計方法探究 Feb 18, 2024 pm 05:16 PM

探索Java工廠模式的三種設計想法工廠模式是一種常用的設計模式,用於建立物件而無需指定特定的類別。在Java中,工廠模式可以透過多種方式實現。本文將探討基於不同設計思路的三種Java工廠模式的實作方式,並給出具體的程式碼範例。簡單工廠模式簡單工廠模式是最基本的工廠模式,它透過一個工廠類別來建立物件。工廠類別根據客戶端的請求參數來決定應該建立哪種特定物件。下面是一個簡

如何使用PHP物件導向簡單工廠模式建立可測試的物件實例 如何使用PHP物件導向簡單工廠模式建立可測試的物件實例 Sep 05, 2023 pm 02:45 PM

如何使用PHP物件導向簡單工廠模式建立可測試的物件實例簡單工廠模式是一種常用的軟體設計模式,它可以幫助我們根據不同的條件建立不同的物件實例。在PHP物件導向程式設計中,結合簡單工廠模式可以提高程式碼的可測試性和可維護性。在本文中,我們將學習如何使用PHP物件導向簡單工廠模式建立可測試的物件實例。我們將以一個簡單的範例來說明這個過程。首先,讓我們定義一個介面來表示要

深入探討Java工廠模式的實作與應用 深入探討Java工廠模式的實作與應用 Feb 24, 2024 pm 10:15 PM

Java工廠模式的原理與應用詳解工廠模式是一種常用的設計模式,它用於創建對象,以及將對象的創建過程封裝起來。 Java中的工廠模式有多種實作方式,其中最常見的有簡單工廠模式、工廠方法模式和抽象工廠模式。本文將詳細介紹這三種工廠模式的原理和應用,並給出對應的程式碼範例。一、簡單工廠模式簡單工廠模式是最簡單、最常用的工廠模式。它通過一個工廠類,根據傳入的參數來返回不

如何在PHP中應用簡單工廠模式來實現物件的自動化創建 如何在PHP中應用簡單工廠模式來實現物件的自動化創建 Sep 05, 2023 pm 02:27 PM

如何在PHP中應用簡單工廠模式來實現物件的自動化創建簡單工廠模式是一種常見的設計模式,它用於創建物件並抽象化了實例化物件的過程。在PHP中,應用簡單工廠模式可以幫助我們將物件的建立和具體實作解耦,使程式碼更加靈活和可維護。在本文中,我們將使用一個範例來說明如何在PHP中應用簡單工廠模式。假設我們有一個電子產品店,它銷售手機和電視機。我們需要根據用戶的選擇來創建相

如何使用PHP物件導向簡單工廠模式建立物件實例 如何使用PHP物件導向簡單工廠模式建立物件實例 Sep 05, 2023 pm 02:09 PM

如何使用PHP物件導向簡單工廠模式建立物件實例在PHP開發中,物件導向程式設計是一種常見的程式設計範式。物件導向的程式設計思想可以讓程式碼結構更加清晰、可維護性更高。而且,使用設計模式可以進一步提高程式碼的靈活性和重複使用性。本文將介紹如何使用PHP的物件導向簡單工廠模式來建立物件實例。簡單工廠模式是一種創建型設計模式,它透過一個單獨的類別來負責創建其他類別的物件。這個單獨的類別通常

如何透過PHP物件導向簡單工廠模式實現物件的多態性 如何透過PHP物件導向簡單工廠模式實現物件的多態性 Sep 05, 2023 am 08:43 AM

如何透過PHP物件導向簡單工廠模式實現物件的多態性簡單工廠模式是一種常見的設計模式,它可以透過一個共同的工廠類別來創建不同類別的對象,並且隱藏了物件的創建過程。 PHP物件導向簡單工廠模式可以幫助我們實現物件的多態性。簡單工廠模式包含三個基本角色:工廠類別、抽象類別和具體類別。首先我們來定義一個抽象類別Animal,它包含一個抽象方法say():abstractclas

See all articles