-
工廠模式: 1.接口:HairInterface 2.實現(xiàn)類:LeftHair、RightHair、InHair 3.工廠類:HairFactory 4.映射:type.properties 5.映射讀取類:PropertiesReader 4.測試入口類:Test --------------------------- 1.properties文件寫映射關系,如:left=com.XXX(包名).LeftHair 2.PropertiesReader類讀取properties文件 public Map<String, String> getProperties() { Properties props = new Properties(); Map<String, String> map = new HashMap<String, String>(); try { InputStream in = getClass().getResourceAsStream("type.properties"); props.load(in); Enumeration en = props.propertyNames(); while (en.hasMoreElements()) { String key = (String) en.nextElement(); String property = props.getProperty(key); map.put(key, property); } } catch (Exception e) { e.printStackTrace(); } return map; } 3.工廠類HairFactory核心內(nèi)容(需要異常處理): Map<String, String> map = new PropertiesReader().getProperties(); //key為傳入?yún)?shù),如:left、right、in //這里實際是通過類名去調(diào)用方法 HairInterface hair = (HairInterface) Class.forName(map.get(key)).newInstance(); return hair;查看全部
-
工廠模式的動機: 基于項目現(xiàn)狀將代碼進行如下設計: 1.盡量松耦合,一個對象的依賴隊形的變化與本身無關 2.具體產(chǎn)品與客戶端剝離,責任分割。查看全部
-
設計模式:是一套被反復使用,多數(shù)人知曉的,經(jīng)過分類編目的,代碼設計經(jīng)驗的總結 好處:可以提高代碼的重用性,讓代碼更容易被他人理解,保證代碼的可靠性 工廠模式: 實例化對象,用工廠方法代替new操作 工廠模式包括工廠方法模式和抽象工廠模式 抽象工廠模式是工廠方法模式的擴展。 工廠模式的意圖:定義一個接口來創(chuàng)建對象,但是讓子類來決定哪些類需要被實例化。 工廠方法把實例化的工作推遲到子類中去實現(xiàn)。 適合工廠模式的情況: (1)有一組類似的對象需要創(chuàng)建。 (2)在編碼的時候不能預見需要創(chuàng)建哪種類的實例。 (3)系統(tǒng)需要考慮擴展性,不應依賴于產(chǎn)品類實例化如何被創(chuàng)建,組合和表達的細節(jié)。 設計: (1)盡量松耦合,(2)具體產(chǎn)品與客戶端剝離查看全部
-
抽象工廠模式類圖查看全部
-
工廠方法模式類圖查看全部
-
工廠模式的內(nèi)容查看全部
-
工廠模式的內(nèi)容查看全部
-
工廠模式的內(nèi)容查看全部
-
工廠模式的內(nèi)容查看全部
-
工廠模式的內(nèi)容查看全部
-
工廠模式的內(nèi)容查看全部
-
工廠模式的內(nèi)容查看全部
-
工廠模式的內(nèi)容查看全部
-
工廠模式的內(nèi)容查看全部
-
工廠模式的內(nèi)容查看全部
舉報
0/150
提交
取消