///建立型模式/
1.抽象工廠模式:
對工廠類抽象乙個介面出來,分別對每乙個需要工廠類例項化的實現類進行例項化。
2.單例模式:
public class singleton
/* 此處使用乙個內部類來維護單例 */
private static class singletonfactory
/* 獲取例項 */
public static singleton getinstance()
//本類的其他實現功能的方法
} 3.建造者模式
建造者模式是對抽象工廠模式的延伸,用於建立大量物件出來。
public void producemailsender(int count)
} 這個抽象工廠接收建立例項個數的引數,進行大量的例項建立。
4.原型模式
實現原型模式,首先要得實現原型空介面(cloneable),覆寫clone()方法。基本上可以分為淺轉殖和深轉殖。
將乙個物件複製後,基本資料型別的變數都會重新建立,而引用型別,指向的還是原物件所指向的
public class prototype implements cloneable
} 將乙個物件複製後,不論是基本資料型別還有引用型別,都是重新建立的。簡單來說,就是深複製進行了完全徹底的複製,而淺複製不徹底。
public class prototype implements cloneable, serializable
/* 深複製 */
public object deepclone() throws ioexception, classnotfoundexception
}將當前需要轉殖的物件序列化,再讀出來返回回去。
//結構型模式
5.介面卡模式
a.類的介面卡模式:c類繼承a類實現b類,這時候c類同時有了a和b類的所有方法。 a類
public class source }
b類介面:
public inte***ce targetable
c類:public class adapter extends source implements targetable
} b.介面級別的介面卡,c類實現b類,再用乙個方法接收a類例項,把a類例項的方法暴露出來。
測試:public class adaptertest {
c:介面的介面卡
有介面a和介面b,乙個抽象類d實現介面a的方法(空方法),然後用不同的類繼承抽象類,重寫抽象類中需要的方法。
抽象類d,實現空方法
記錄設計模式
單例模式,工廠模式不說了 1.策略模式 定義了演算法家族 這些演算法完成的工作都是相同的,只是實現不同 分別封裝起來,讓他們相互之間可以相互替換,此模式讓演算法的變化不影響使用演算法的客戶。策略模式和工廠模式有一的相似處,新增context類,來維護介面的實現類。相比工廠模式,工廠模式要用到介面類和...
記錄設計模式
設計模式 design pattern 是一套被反覆使用,為多數人知曉,經過分類編目的 設計經驗的總結。答 設計模式的目的是為了 重用,避免程式大量修改,同時使 更易於理解,並且保證 的可靠性。顯然設計模式不管是對自己還是對他人還是對系統都是有益的。1 factory method 工廠方法 2 a...
java設計模式
a categorization of patterns by intent intent patterns inte ces adapter,facade,composite,bridge responsibility singleton,observer,mediator,proxy,chain...