設計模式 之 三

2021-08-21 15:38:25 字數 1319 閱讀 5546

一、單例模式

飽漢模式

public class singlepattern2 

return sp;

}}

餓漢模式

public class singlepattern1 

}

兩種模式差別在有沒有在類被載入時就給建立好物件,『餓漢』 即等不及了要吃東西所以要提前建立好物件,『飽漢』正好相反

二、模板方法

給出演算法的骨架,具體由實現類去實現。

public abstract class account 

public int getyear()

public void setyear(int year)

public double getfund()

public void setfund(double fund)

// 具體賬戶計算所獲得資訊必須先實現該賬戶的利率

public double getinterest()

public abstract double getinterestrate();

}

public class accounta extends account 

@override

public double getinterestrate()

}

public class test 

}

三、工廠模式

簡意:定義乙個介面,具體實體類繼承這個介面,然後定義乙個工廠類,可以從中獲取任意的乙個實體類,而不用去了解其建立過程

public inte***ce runnable
public class dog implements runnable 

}

public class cat implements runnable 

}

public class pig implements runnable 

}

public class animalfactory else if(animaltype.equalsignorecase("cat"))else if(animaltype.equalsignorecase("pig"))else 

}public static void main(string args)

}

設計模式之三 工廠模式

如果要擴充套件的話,則要修改源 這樣如果以後產生的phone型別很多,那麼就要一直修改,維護成本高 如果萬一你哪個型別寫錯了怎麼辦 所以出現了工廠模式。工廠模式簡單來說就是乙個工廠對應乙個產品。比如說iphonefactory產生iphone系列的手機,xiaomifactory產生xiaomi系列...

設計模式之三 Singleton

設計模式之三 singleton 問題 假設我們電腦只有乙個印表機,我們用乙個類來管理印表機資源,如果像一般的類一樣,使用者可以建立多個類的例項,那麼勢必會造成系統資源的大量浪費,為了達到節約資源的目的,我們需要尋找乙個新的方法 解決方案 我們在類內建立乙個靜態的本類指標,初始化的時候為其賦值,以後...

Java設計模式之三

模擬乙個遙控開關燈的例子 按照正常的思路,應該是遙控器 remotecontrol,直接呼叫燈的on 或者off 方法,為了呼叫者和被呼叫者,或者是傳送請求和執行請求的物件松耦合,解耦。這裡抽象出命令的物件,具體的各種命令持有執行者的執行方法,比如例子中,遙控器是傳送請求者也叫invoker,燈是執...