設計模式之橋梁模式

2021-09-30 17:34:56 字數 1155 閱讀 8463

其實大家都是朋友,也不能人人都像小明那麼勢利吧。小剛就做的比較好,一打眼就知道誰是窮人誰又是富人了。不過沒關係窮人有窮人的玩法富人有富人的玩法嘛~這段邏輯用**怎麼實現?

首先是乙個抽象的朋友(朋友在這裡充當了實現者角色)

public abstract class friend 

}

下來朋友裡有富有的有貧窮的玩法不太一樣

public class richman extends friend 

protected void eat()

protected void drink()

//富人還可以為所欲為

public void doanything()

public void play()

}

窮人

public class poorman extends friend 

protected void eat()

protected void drink()

public void play()

}

抽象者角色

public abstract class abstraction 

public void dosomething()

public void play()

}

具體的抽象者角色重寫了父類的部分邏輯,這裡僅以小剛所屬為例

public class refinedabstraction extends abstraction

//修正抽象類的邏輯

public void play()

}

場景類

public class client 

}

執行結果:

小強是窮人

只能吃得起大排檔

只能和得起茅台鎮

沒關係不管是誰出去玩我都請客

————————————————————————

小紅很有錢

可以吃得起法餐

可以喝得起82年的拉菲

還可以一起去***

沒關係不管是誰出去玩我都請客

設計模式之橋梁模式

場景描述 1 在系統設計時,發現類的繼承有n層時,但不能確定是否會更改繼承來的共性,可以考慮使用橋梁模式。2 類圖描述 橋梁模式是抽象和實現的解耦,使得兩者可以獨立地變化。3 程式實現舉例 c using system using system.collections.generic using s...

設計模式之禪之設計模式 橋梁模式

1 package com.yeepay.sxf.template24 2 3 實現化角色 4 相當於不同的業務邏輯,抽象出共有行為5 6 產品類7 author sxf8 9 10 public abstract class product view code 房子產品實現 1 package c...

《設計模式之禪》之橋梁模式

橋梁模式也叫橋接模式,是乙個比較簡單的模式,其定義如下 將抽象和實現解耦,使得兩者可以獨立地變化。abstraction 抽象化角色 它的主頁職責是定義出該角色的行為,同時儲存乙個對實現畫角色的引用,該角色一般是抽象類。implementor 實現化角色 它是介面或者抽象類,定義角色必需的行為和屬性...