橋接模式:將抽象部分與他實現部分分離,使它們可以獨立。
UML圖:
使用場景:1、如果一個系統需要在構件的抽象化角色和具體化角色之間增加更多的靈活性,避免在兩個層次之間建立靜態的繼承聯系,通過橋接模式可以使它們在抽象層建立一個關聯關系。 2、對于那些不希望使用繼承或因為多層次繼承導致系統類的個數急劇增加的系統,橋接模式尤為適用。 3、一個類存在兩個獨立變化的維度,且這兩個維度都需要進行擴展。
注意事項:對于兩個獨立變化的維度,使用橋接模式再適合不過了。
代碼就不貼了,懶得寫,看UML圖就能明白,抽象與具體部分是聚合關系,抽象引用了具體。