過濾器模式:
用於過濾篩選
1.定義常規類
2.定義抽象介面類,用於過濾的函式接收list,並返回list
3.定義具體過濾類實現抽象介面,重寫過濾用的函式
4.定義用於操作的具體過濾類實現抽象介面,add,or,not
5.客戶端使用抽象介面類,進行具體的過濾操作
1.定義常規類
class dog
private string ***ual;
public string getborn()
public dog(string born, string ***ual) }
2.定義抽象介面類,用於過濾的函式接收list,並返回list
public inte***ce selected
3.定義具體過濾類實現抽象介面,重寫過濾用的函式
class selectedfemale implements selected
}return list;
} }class selectedwild implements selected
return list;
} }
4.定義用於操作的具體過濾類實現抽象介面,add,or,not
class andselcted implements selected
@override
public listselectdogs(listdogs) }
class orselcted implements selected
@override
public listselectdogs(listdogs)
}return list;
} }class notselected implements selected
@override
public listselectdogs(listdogs)
return list2;
} }5.客戶端使用抽象介面類,進行具體的過濾操作
public static void main(string args) ;
listdogs = arrays.aslist(arraydogs);
selected selected = new andselcted(new selectedfemale()
, new selectedwild());
prinlist(selected.selectdogs(dogs));
selected = new notselected(new selectedfemale());
prinlist(selected.selectdogs(dogs));
} public static void prinlist(listlist)
}
過濾器模式
簡介 這種模式允許開發人員使用不同的標準來過濾一組物件,通過邏輯運算以解耦的方式把它們連線起來。這種型別的設計模式屬於結構型模式,它結合多個標準來獲得單一標準。在本例中,以水果作為過濾的物件。水果的顏色和口味各有差別。有時我們只需要酸味的水果,有時只需要黃色的水果,這種情況下,就需要用到過濾器模式,...
過濾器模式
網上對過濾器的解釋已經很多了,而且這個模式的概念理解起來不算很難,但是發現網上提供的demo 寫得不好,所以這裡就給大家介紹一下如何實現合理的過濾器模式。這樣我們應該怎麼做呢?需要解耦,就需要把比較函式提取出來。經過思考,我們可以讓過濾器類持有乙個委託,這個委託就是用來過濾資料的,我們在建構函式中給...
過濾器模式
定義 過濾器模式 intercepting filter pattern 又稱標準模式 criteria pattern 主要用於統一接收並過濾客戶端的請求,根據過濾器的選擇,將請求傳送給對應的目標處理程式。過濾器模式屬於物件結構型模式。要點主要角色 目標物件 target 處理請求,根據要求執行任...