java 設計模式之橋接模式

2021-09-01 22:06:29 字數 1151 閱讀 6947

今天看了下設計模式中的橋接模式,發現還是很有趣味的,筆記之。舉個例子,比如gg要約會mm,不同的mm喜歡喜歡不同的地點,

比如rose喜歡去電影院,kitty喜歡去西餐廳,而tom,peter 都是gg,他們要分別去約會這兩位mm了,而約會的地點,全部由mm決定

首先是mm介面

package com.liao.bridge1;

public inte***ce mm

rose:

package com.liao.bridge1;

public class rose implements mm

}kitty:

package com.liao.bridge1;

public class kitty implements mm

}gg的介面

package com.liao.bridge1;

public abstract class gg

else if (girl.equals("kitty"))

//預設約rose

else}}

tom:

package com.liao.bridge1;

public class tom extends gg

public void dateplace()

}peter:

package com.liao.bridge1;

public class peter extends gg

public void dateplace()

}主程式

package com.liao.bridge1;

public class client

}執行起來

我是tom,我想約rose

我是rose,我喜歡去電影院

我是tom,我想約kitty

我是kitty,我喜歡去西餐廳吃西餐

我是peter,我想約rose

我是rose,我喜歡去電影院

我是peter,我想約kitty

我是kitty,我喜歡去西餐廳吃西餐

可以看到橋接模式還是很不錯的哦,在實際應用中,比如乙個程式,有三類不同的功能,而這個程式需要分別在不同的操作平台執行的話,可以大大減少子類的數量哦,當然對橋接模式更深的討論可以參見園子裡其他朋友的文章

Java設計模式 橋接模式

橋接模式是一種結構型的設計模式,主要是特點是將抽象部分與實現部分分離開來,從而能夠進行獨自的變化。在橋接模式中,所謂的橋,個人理解是在抽象層中,將介面聯絡到乙個抽象類中,更確切的說,是依賴關係。橋接模式主要適用場景是,某個物件需要從兩個或者多個 一般是兩個 維度進行描述或者操作的時候,能夠簡潔的進行...

設計模式之橋接模式

public class test 兩個維度 乙個是具體產品,如狗 豬 乙個是抽象產品,如溫順的動物 冷酷的動物 排列組合 如溫順的狗 冷酷的豬等 abstract class animal 該橋接類的引入是關鍵 abstract class animalbridge extends animal ...

設計模式之 橋接模式

今天來學習橋接模式,在我們日常生活中,有很多的事物是可以 多維度 的變化的,比如我們去吃麵條,有雞絲面和牛肉麵兩種,每一種面又分為辣味的和不辣的,而且每種面可能會分為大碗小碗的。很多事物能夠變化的維度不止一種,甚至數十種,那麼我們在 上怎麼應對這些變化呢?每乙個都單獨弄乙個類顯然不是什麼好辦法。那麼...