更新時間:2021-08-10 13:22:12 來源:動力節點 瀏覽1247次
設計模式,解決某一問題的最佳實踐。針對某一具體的需求選擇某一模式把它解決。它是領域中的一些大神經過大量實踐總結出的一套規律、法則,以便后來人可以套用而不用去做重復的工作。
工廠模式并不僅僅是用來new出一個類的對象的。
簡單工廠確實如題主的描述所說,是一個工廠對應一個類的關系。
在這里,可以舉出一些復雜的例子,與題主的描述不同。
假設有代碼包A和代碼包B,
代碼包B是代碼包A的調用者,A向B暴露接口InterfaceA。
在A的內部結構中,實現了InterfaceA的有ClassA1,ClassA2,ClassA3,……ClassA100。
但是B并不關心這些,因為對于B來說,A的功能只有一個,就是InterfaceA。
這個時候,B想要使用一個InterfaceA的實現,想要new一個出來,但又不想與代碼包A中的復雜的構造邏輯耦合,怎么辦?
只能向代碼包A中傳遞參數,交給代碼包A自己選擇到底是那個ClassA1還是A100被new出來。
而這個對構造過程進行選擇的邏輯,就是工廠。
當然了,我這里舉的例子是InterfaceA,你也可以用AbstractClassA之類的。
工廠在這里面起的作用,就是隱藏了創建過程的復雜度,以配合InterfaceA對那一百個子類的復雜度進行隱藏,這樣B只要知道上轉型之后的InterfaceA即可,簡單清晰。
以上就是動力節點小編介紹的"Java工廠設計模式的用處",希望對大家有幫助,想了解更多可查看Java設計模式。動力節點在線學習教程,針對沒有任何Java基礎的讀者學習,讓你從入門到精通,主要介紹了一些Java基礎的核心知識,讓同學們更好更方便的學習和了解Java編程,感興趣的同學可以關注一下。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習