過濾器模式

2021-09-25 10:04:36 字數 1415 閱讀 6813

過濾器模式:

用於過濾篩選

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 處理請求,根據要求執行任...