簡單工廠類

2021-07-30 01:27:23 字數 507 閱讀 4945

工廠類;

定義乙個類來負責建立其他類的例項,被建立的例項通常有共同的介面,有共同的父類。簡單的工廠類實際是根據傳入工廠類的引數來動態決定建立那個產品類。比如建築工廠,能產生水泥、磚塊,鋼筋。當需要水泥時,工廠就產出水泥。在這種工廠類中要有必要的判斷邏輯,能根據外部的資訊決定究竟建立那個具體類的物件。這種設計思想類似於類的動態聯編,即在程式執行時根據輸入的資訊由父指標來動態的建立子類的物件。但是不難發現工廠類的缺點。由於工廠類集中了建立所有例項物件的邏輯**,這種高內聚的方法做的並不好。當系統中具體類的產品不斷增多是,工廠類就要做相關的修改,而這卻違背了設計模式中最基本的「開-——閉」原則。在「開——閉」原則中要求對於類的修改是關閉的,類的擴充套件是開放的。具體工廠類的例項**如下例:

#includeusing namespace std;  

class animal

; class bird:public animal

return 0;

}

簡單工廠類

工廠類就是乙個專門用來建立其它物件的類,工廠模式通常用來返回類似介面的不同的類,工廠的一種常見用法就是建立多型的提供者。通常工廠模式有乙個關鍵的構造,即一般被命名為factory的靜態方法。這個靜態方法可以接受任意數量的引數,並且必須返回乙個物件。簡單工廠模式 inte ce db class my...

學習簡單工廠類

using system 抽象類 public abstract class schooluser fname console.writeline last name lname console.writeline user type usertype 具體類 校負責人 public class s...

設計模式 簡單類工廠

在程式設計學習過程中,開始是隨性的寫,覺得只要能實現自己想要的功能,便可完事。當需求發生改變時,樂此不彼地修改凌亂的 沒有領悟到程式設計這門藝術,只是乙個 搬運工。慢慢去閱讀一些書籍,發現自己知道的東西太少,思想過於簡單,考慮問題比較單一。希望能通過每天的學習去充實自己,並將這些點滴記錄下來。今天就...