В компьютерном программировании шаблон проектирования «singleton» используется для того, чтобы класс имел только один экземпляр и предоставлял глобальную точку доступа к нему. Вот несколько способов реализации синглтона на разных языках программирования:
-
Синглтон в Java:
public class Singleton { private static Singleton instance; private Singleton() { // Private constructor to prevent instantiation } public static Singleton getInstance() { if (instance == null) { synchronized (Singleton.class) { if (instance == null) { instance = new Singleton(); } } } return instance; } } -
Синглтон в C#:
public class Singleton { private static Singleton instance; private Singleton() { // Private constructor to prevent instantiation } public static Singleton Instance { get { if (instance == null) { lock (typeof(Singleton)) { if (instance == null) { instance = new Singleton(); } } } return instance; } } } -
Синглтон в Python:
class Singleton: _instance = None def __new__(cls, *args, kwargs): if not cls._instance: cls._instance = super().__new__(cls, *args, kwargs) return cls._instance -
Синглтон в JavaScript:
const Singleton = (function () { let instance; function createInstance() { // Singleton logic here return { // Singleton methods and properties }; } return { getInstance: function () { if (!instance) { instance = createInstance(); } return instance; } }; })();