1. 程式人生 > >C#設計模式--簡單工廠模式

C#設計模式--簡單工廠模式

設計模式:

簡單工廠模式(Simple Factory Pattern)

介紹:簡單工廠模式不是Gof23種設計模式之一。但它在實際的程式設計中經常被用到,而且思想也非常簡單,下面簡單舉例說明:

簡單工廠模式類圖:

簡單工廠模式C#程式碼舉例:

MobilePhone(手機類)

1     public abstract class MobilePhone
2     {
3         
4         public abstract void print();
5     }

Iphone(蘋果手機類)

1 public class Iphone : MobilePhone
2 { 3 4 public override void print() 5 { 6 Console.WriteLine("我是蘋果品牌!"); 7 } 8 }

XiaoMI(小米手機類)

1 public class XiaoMI : MobilePhone
2     {
3         public override void print()
4         {
5             Console.WriteLine("我是小米手機");
6         }
7 }

SmarTisan(錘子手機類)

public class SmarTisan : MobilePhone
    {
        public override void print()
        {
            Console.WriteLine("我是錘子手機!");
        }
    }

MobielPhoneFactory(手機工廠類)

 1 public class MobielPhoneFactory
 2     {
 3         public static MobilePhone CreateMobilePhone(string
PhoneBrand) 4 { 5 MobilePhone mobilePhone = null; 6 if (PhoneBrand.Equals("蘋果")) 7 { 8 mobilePhone = new Iphone(); 9 } 10 else if (PhoneBrand.Equals("小米")) 11 { 12 mobilePhone = new XiaoMI(); 13 } 14 else if (PhoneBrand.Equals("錘子")) 15 { 16 mobilePhone = new SmarTisan(); 17 } 18 else 19 { 20 21 } 22 return mobilePhone; 23 } 24 25 }

測試工廠程式碼:

 1 class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5             MobilePhone mobilephone1 = MobielPhoneFactory.CreateMobilePhone("蘋果");
 6             if(mobilephone1 != null)
 7             mobilephone1.print();
 8             MobilePhone mobilephone2 = MobielPhoneFactory.CreateMobilePhone("小米");
 9             if(mobilephone2 != null)
10             mobilephone2.print();
11             MobilePhone mobilephone3 = MobielPhoneFactory.CreateMobilePhone("錘子");
12             if(mobilephone3 != null)
13             mobilephone3.print();
14             Console.Read();
15         }
16     }

執行結果:

總結:如有問題歡迎留言!以上便是一個簡單工廠模式!

相關推薦

C#設計模式——簡單工廠模式

turn static 現在 rri 介紹 return 天都 土豆 增加 一、引言   這個系列也是自己對設計模式的一些學習筆記,希望對一些初學設計模式的人有所幫助的,在上一個專題中介紹了單例模式,在這個專題中繼續為大家介紹一個比較容易理解的模式——簡單工廠模式。 二、簡

大話設計模式(C++)第一章-簡單工廠模式

問題:寫一個簡單的計算器。 普通的寫法: #include<iostream> using namespace std; int main() { double NumberA,NumberB; cout<<"請輸入數字A: "; cin&

C++設計模式——簡單工廠模式

問題描述 之前在公司做了一個windows 8平臺的閱讀器。首先,需要將電子書中的內容渲染到螢幕上,而電子書每一頁都包含各種各樣的內容,比如:圖形、影象和文字等等;不同的內容,就是不同的物件;在將不同的內容渲染到螢幕上之前,就需要new操作,建立不同的物件,然後再在螢幕上進

C++設計模式——簡單工廠模式(2)

#define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std; //抽象的水果類 class Fruit { public: virtual void get

C++設計模式——簡單工廠模式及具體應用(含例子)

前言 Iphone 6即將面世過程中,富士康集團正在為Iphone6的面世做著最後的衝刺,生產線上的工人正忙碌著為Iphone6進行各道流程的加工操作。作為代工工廠,富士康為世界上IT巨頭,如:蘋果,惠普等加工出各種產品。市場上看到的各種品牌電腦,絕大部分來在富士康這

C# 設計模式-簡單工廠模式

網上有很多關於類似工廠模式的部落格,大都說明的很詳細,這裡我結合在專案中的體會簡單說一下! 介紹:簡單工廠模式不能說是一個設計模式,說它是一種程式設計習慣可能更恰當些。因為它至少不是Gof23種設計模

C#設計模式--簡單工廠模式

設計模式: 簡單工廠模式(Simple Factory Pattern) 介紹:簡單工廠模式不是Gof23種設計模式之一。但它在實際的程式設計中經常被用到,而且思想也非常簡單,下面簡單舉例說明: 簡單工廠模式類圖: 簡單工廠模式C#程式碼舉例: MobilePhone(手機類) 1

PHP面向對象-設計模式 單例模式 簡單工廠模式 工廠方法模式

單例 nbsp 私有化 {} 意義 pan php代碼 get fun 1.單例模式   單例模式是一種常用的軟件設計模式。在它的核心結構中只包含一個被稱為單例的特殊類。通過單例模式可以保證系統中一個類只有一個實例。即一個類只有一個對象實例。   要實現每一個類只有一個實例

設計模式--簡單工廠模式

-- nfa sum 處理 create new 功能 子類 工廠模式 近期又在看程傑的《大話設計模式》這本書,這真的是我超級喜歡的一本書。裏面的內容非常精彩。學習之余。將書中的內容整理出來,另外加上了一些自己的理解,方便日後自己回想並同一時候希望本筆記能夠對各位編程

設計模式-簡單工廠模式

sha include highlight namespace 簡單工廠模式 case int 工廠模式 argv 簡單工廠模式:是一種實例化對象的方式,只要輸入實例化對象的名字,就可以通過工廠對象的相應工廠函數來制造你需要的對象 核心是,對於一個父類的多個繼承子類,工廠對

設計模式——簡單工廠模式

idt index init == set ces edev ini property 聲明:以下內容來源於《大話設計模式》,學習 簡單工廠模式類圖: 界面: 代碼: using System; using System.Collections.Generic; us

JavaScript設計模式--簡單工廠模式例子---XHR工廠

++ 原型鏈 this soft microsoft for .proto 跨域 默認 第一步,Ajax操作接口(目的是起一個接口檢測作用) (1)引入接口文件 //定義一個靜態方法來實現接口與實現類的直接檢驗 //靜態方法不要寫出Interface.pro

設計模式---簡單工廠模式

基於 static tor nfa 減少 只知道 系統 因此 sqrt 簡單工廠模式又稱為靜態工廠方法模式(static factory method ),它不是GOF(Gang of Four, 四人組)所講的23種設計模式之一,但卻是實際中經常使用的方法之一。 實現:定

1.設計模式-----簡單工廠模式

簡單工廠模式 定義:(定義一個用於建立物件的介面,讓子類決定例項化哪一個類。工廠方法使一個類的例項化延遲到其子類。) 簡單來說:就是在工廠裡面例項化物件,隱藏了物件的實現。 以一個計算器的程式碼為案例: //抽象運算類 public abstract class Operatio

JAVA 23種設計模式---工廠模式(簡單工廠模式)

寫在前面的話: java常用的設計模式有23種,設計模式就是為了重用程式碼、解耦、讓程式碼更容易讓他人理解、保證程式碼可靠性 設計模式遵循的原則有6個: 1、開閉原則(Open Close Principle)   對擴充套件開放,對修改關閉。 2、里氏代換原則(Liskov S

大話設計模式--簡單工廠模式

問題:請用C++,JAVA,C#任意一種以面嚮物件語言實現一個計算器控制檯程式:要求輸入2個數和運算子號,得到結果 第一次編碼: public class Program { public static void main(String[] args) throws

用心理解設計模式——簡單工廠模式 (Simple Factory Pattern)

前置文章: 用心理解設計模式——設計模式的原則  設計模式相關程式碼已統一放至 我的 Github   一、定義   建立型模式之一。   靜態 工廠方法模式。 二、結構解析:   它的一般結構有三種角

Java設計模式-簡單工廠模式/工廠模式/抽象工廠模式

目錄 簡單工廠模式 工廠模式 抽象工廠模式 上述程式碼 GitHub 地址:https://github.com/baicun/designPatterns 共同點:建立一個類,對同樣操作的方法介面進行封裝,類似工廠管理生產線等情形。 優點:方便管理,易於拓展。 應用

23種設計模式——簡單工廠模式

簡單工廠模式並不是23個設計模式的一員,但是一般將它作為學習設計模式的起點。簡單工廠模式又稱為靜態工廠模式,屬於類建立型模式。 可以根據傳遞引數的不同返回不同類的例項。專門定義了一個類來建立其它類,這個類被稱為工廠類。被建立的例項通常具有相同的父類。 簡單工廠模式結構圖:

淺談Java設計模式——簡單工廠模式

一、定義         通過專門定義一個類來負責建立其他類的例項,被建立的例項通常都具有共同的父類。 二、類圖 三、理解         Operation為抽象類,它定義了一個抽象方法getResult;OperationAdd和OperationSubtra