Singleton

Definition


Ensure a class has only one instance and provide a global point of access to it.

UML class diagram


Participants


  • Singleton
    • defines an Instance operation that lets clients access its unique instance. Instance is a class operation.
    • responsible for creating and maintaining its own unique instance.

Sample code in Java

package com.hong.singleton;
 
final class Singleton
{
    
    private static Singleton singleton = new Singleton();
    
    private Singleton(){}
    
    public static Singleton getInstance()
    {
        return singleton;
    }

}

public class Singleton_structure {
    
    public static void main(String[] args)
    {
        Singleton singleton1 = Singleton.getInstance(); 
        Singleton singleton2 = Singleton.getInstance();
        
        if(singleton1 == singleton2)
            System.out.println("There are same instance"); 
        else
            System.out.println("There are not same instance");
    }

}