摘要:工廠模式實例定義一個接口定義一個實現(xiàn)類定義一個實現(xiàn)類根據(jù)不同需求返回不同實現(xiàn)類的方法運行結(jié)果單利模式實例懶漢式餓漢式
工廠模式實例
//定義一個接口:Vehicle
interface Vehicle{ void work(); }
//定義一個實現(xiàn)類:Car
class Car implements Vehicle{ @Override public void work(){ System.out.println("I am building a Car"); } }
//定義一個實現(xiàn)類:Train
class Train implements Vehicle{ @Override public void work(){ System.out.println("I am building a train"); } }
public class factory{ //根據(jù)不同需求返回不同實現(xiàn)類的方法 public Vehicle needs(String s){ if(s.equals("Car")){ return new Car(); }else if (s.equals("Train")) { return new Train(); } return null; } public static void main (String args[]){ factory f = new factory(); Vehicle v=f.needs("Car"); v.work(); Vehicle v1=f.needs("Train"); v1.work(); } }
運行結(jié)果 :
---I am building a Car
---I am building a train
懶漢式
public class Singleton { private static Singleton instance; private Singleton (){} public static synchronized Singleton getInstance() { if (instance == null) { instance = new Singleton(); } return instance; } }
餓漢式
public class Singleton { private static Singleton instance = new Singleton(); private Singleton (){} public static Singleton getInstance() { return instance; }
}
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/70107.html
摘要:寫在前面一些關于自己在代碼設計思維方面的學習記錄面向?qū)ο蟮囊恍├斫鈱嵗a就不上了就寫一些總結(jié)封裝提供屬性和方法的權(quán)限管理只對外暴露接口具體的功能在內(nèi)部實現(xiàn)繼承子類繼承父類的方法和屬性可以抽離公共代碼減少代碼冗余多態(tài)同一個接口在子類中的不同 寫在前面: 一些關于自己在代碼設計思維方面的學習記錄 面向?qū)ο蟮囊恍├斫?實例代碼就不上了, 就寫一些總結(jié) 封裝: 提供屬性和方法的權(quán)限管理, ...
摘要:注意事項聲明函數(shù)時候處理業(yè)務邏輯區(qū)分和單例的區(qū)別,配合單例實現(xiàn)初始化構(gòu)造函數(shù)大寫字母開頭推薦注意的成本。簡單工廠模式使用一個類通常為單體來生成實例。 @(書籍閱讀)[JavaScript, 設計模式] 常見設計模式 一直對設計模式不太懂,花了一下午加一晚上的時間,好好的看了看各種設計模式,并總結(jié)了一下。 設計模式簡介 設計模式概念解讀 設計模式的發(fā)展與在JavaScript中的應用 ...
摘要:滿足此要求的簡單模式是在創(chuàng)建新實例時將資源傳遞給構(gòu)造函數(shù)。依賴注入同樣適用于構(gòu)造函數(shù)靜態(tài)工廠第項和構(gòu)建器第項。將資源工廠傳遞給構(gòu)造函數(shù)就會變成一個有用的模式。這種做法稱為依賴注入,將極大地增強類的靈活性,可重用性和可測試性。 ??許多類依賴于一個或多個底層資源。 例如,拼寫檢查器依賴于字典。常見的做法是將這些類實現(xiàn)為靜態(tài)實用程序類(第4項): // Inappropriate use ...
閱讀 2950·2021-11-15 18:02
閱讀 3843·2021-10-14 09:43
閱讀 3796·2021-09-08 10:41
閱讀 2550·2019-08-30 15:53
閱讀 1837·2019-08-30 14:14
閱讀 1989·2019-08-29 16:12
閱讀 3179·2019-08-29 14:03
閱讀 1308·2019-08-29 13:46