Java中的單例和多例是面向對象編程中最基本的設計模式之一,可以根據實際應用場景選擇不同的設計模式。
單例模式指的是在整個應用程序中,某個類只存在一個實例對象。這個實例對象可以在程序的任何地方使用,保證了對該實例對象的訪問和操作的一致性和穩定性。以下是Java實現單例模式的代碼:
public class Singleton { private static Singleton instance = null; private Singleton() {} public static synchronized Singleton getInstance() { if(instance == null) { instance = new Singleton(); } return instance; } }
多例模式指的是在整個應用程序中,某個類存在多個實例對象。這些實例對象的數量可以根據實際需求自由配置,每個實例對象都具有獨立的屬性和方法。以下是Java實現多例模式的代碼:
public class Multiton { private static final Multiton instance1 = new Multiton(); private static final Multiton instance2 = new Multiton(); private static final Multiton instance3 = new Multiton(); private Multiton() {} public static Multiton getInstance(String instanceName) { switch (instanceName) { case "instance1": return instance1; case "instance2": return instance2; case "instance3": return instance3; default: return null; } } }