一、問題
1、學校院系展示需求
2、要求要在乙個頁面中展示出學校的院系組成,乙個學校有多少個學院,乙個學校有多個系。
3、學校 包含學院。學院包含系
二、實現方式
1、繼承方式:不能很好實現管理
2、組合模式:
三、組合模式基本介紹
1、由叫部分整體式,它建立了物件的樹形介面,將物件組合成樹狀結構表示「整體-部分」的層次關係。
2、依據樹形機構來組合物件,用來表示部分以及整體層次
3、這種型別的設計模式屬於結構型模式
4、組合模式使得使用者對單個物件和組合物件的訪問具有一致性,即:組合能讓客戶以一致的方式處理個別物件以及組合物件。
四、注意
1、簡化客戶端操作。面對一致的物件不用考慮整體或部分具體問題。
2、有擴充套件性,當需要改變組合物件時,只需要調整內部的層次關係,客戶端不用做出任何改動。
3、方便建立出複雜的層次結構。客戶端不用去理會組合裡面的組成細節。
4、處理者具有樹形結構時用
5、有較高的抽象性,如果類的很多方法都不一樣,屬性也不一樣,則不合適用組合模式。
黑板模式(二十九)
黑板模式 blackboarddesignpattern 是觀察者模式的乙個擴充套件,知名度並不高,但是我們使用的範圍卻非常廣。黑板模式的意圖如下 允許訊息的讀寫同時進行,廣泛地互動訊息。簡單地說,黑板模式允許多個訊息讀寫者同時存在,訊息的生產者和消費者完全分開。這就像乙個黑板,任何乙個教授 訊息的...
(二十九)設計模式之單例設計模式
單例模式的思路是 乙個類能返回乙個物件的引用 並且永遠是同乙個 和乙個獲得該例項的方法 靜態方法,通常使用 getinstance 名稱 那麼當我們呼叫這個方法時,如果類持有的引用不為空就返回該引用,否者就建立該類的例項,並且將例項引用賦值給該類保持的那個引用再返回。同時將該類的建構函式定義為私有方...
(二十九)設計模式之單例設計模式
單例模式的思路是 乙個類能返回乙個物件的引用 並且永遠是同乙個 和乙個獲得該例項的方法 靜態方法,通常使用 getinstance 名稱 那麼當我們呼叫這個方法時,如果類持有的引用不為空就返回該引用,否者就建立該類的例項,並且將例項引用賦值給該類保持的那個引用再返回。同時將該類的建構函式定義為私有方...