定義抽象公司
public abstract class corp
}
上方是模板方法
下面是房地產公司
public class housecorp extends corp
// 賣房子
protected void sell()
// 賺錢
public void makemoney()
}
服裝公司
public class clothescorp extends corp
protected void sell()
public void makemoney()
}
最後編寫場景
public class client
}
企業改頭換面,生產另外的產品
山寨公司
public class ipodcorp extends corp
// 暢銷
protected void sell()
// 賺錢
public void makemoney()
}
賺錢
public class client
}
公司和產品分離,讓其之間建立關係
// 抽象產品類
public abstract class product
// 房子
public class house extends product
// 銷售
public void beselled()
}
繼續
public class ipod extends product
public void beselled()
}
下面是抽象公司類
public abstract class corp
// 公司賺錢
public void makemoney()
}
定義房地產公司
public class housecorp extends corp
// 賺錢
public void makemoney()
}
山寨公司
public class shanzhaicorp extends corp
// 賺錢
public void makemoney()
}
最後書寫場景
public class client
}
此時在目前狀態下,若要生產服裝,只需要繼承product類,定義乙個服裝類即可
public class clothes extends product
public void beselled()
}
最後書寫場景類
public class client
}
橋梁模式,抽象和實現解耦,需要的時候,將實現注入抽象。
設計模式之橋梁模式
其實大家都是朋友,也不能人人都像小明那麼勢利吧。小剛就做的比較好,一打眼就知道誰是窮人誰又是富人了。不過沒關係窮人有窮人的玩法富人有富人的玩法嘛 這段邏輯用 怎麼實現?首先是乙個抽象的朋友 朋友在這裡充當了實現者角色 public abstract class friend 下來朋友裡有富有的有貧窮...
設計模式之橋梁模式
場景描述 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...