Open Johnny850807 opened 7 years ago
學習目標: 泛型 , HashMap
現在你要撰寫一個 工廠 的類別 使用者 可以決定
這個工廠 接收 什麼零件 產生 什麼產品
因此必須使用泛型 來讓此工廠的使用可以動態決定零件以及產品 來達到要求
零件限制為下面三種 Screw , Box , Module
而產品 限制為下面兩種 Car , Robot
撰寫一個類別庫 讓你的工廠供使用者彈性選擇即可 並且確保零件及產品只能傳入上述列出的幾種
然而 使用者若要使用工廠 則可以使用如下方式實體化工廠
如: 我要一個能傳入Screw 生產 Car 的工廠
Factory<Screw , Car> carFactory = new Factory<Screw,Car>();
因此零件及產物類別都需要另外撰寫 (自行設計囉)
然而工廠提供兩種功能 **1. 放置零件至工廠囤積 (如果工廠宣告成Factory<Screw , Car> 則他只能丟入Screw零件 ) (囤積零件才能消耗來生產產品)
產品規格─
若要生產Car 則要消耗 3個零件 若要生產 Robot 則要消耗 7個零件
若零件不足 要丟出例外
此題目範例只提供 C# 但與java大同小異 Main只需要隨意測試自己寫的工廠類別庫即可 測試的點如下:
測試工廠囤積產品 測試工廠生產產品: (1)零件足夠則生產 (2)零件不足則印出錯誤訊息
此題目會用到 Reflection 技術,因此已被列為不建議 ,跳過這題或是來挑戰吧 !!
學習目標: 泛型 , HashMap
現在你要撰寫一個 工廠 的類別 使用者 可以決定
這個工廠 接收 什麼零件 產生 什麼產品
因此必須使用泛型 來讓此工廠的使用可以動態決定零件以及產品 來達到要求
零件限制為下面三種 Screw , Box , Module
而產品 限制為下面兩種 Car , Robot
撰寫一個類別庫 讓你的工廠供使用者彈性選擇即可 並且確保零件及產品只能傳入上述列出的幾種
然而 使用者若要使用工廠 則可以使用如下方式實體化工廠
如: 我要一個能傳入Screw 生產 Car 的工廠
因此零件及產物類別都需要另外撰寫 (自行設計囉)
然而工廠提供兩種功能 **1. 放置零件至工廠囤積 (如果工廠宣告成Factory<Screw , Car> 則他只能丟入Screw零件 ) (囤積零件才能消耗來生產產品)
產品規格─
若要生產Car 則要消耗 3個零件 若要生產 Robot 則要消耗 7個零件
若零件不足 要丟出例外
此題目範例只提供 C# 但與java大同小異 Main只需要隨意測試自己寫的工廠類別庫即可 測試的點如下:
測試工廠囤積產品 測試工廠生產產品: (1)零件足夠則生產 (2)零件不足則印出錯誤訊息