Singleton Pattern




package designPatterns.creatingObjects.singleton;

/** A good implementation of a Singleton pattern.
* This implementation is thread-safe.
* See other implementations in lecture slides.
* From Joshua Bolch, Effective Java.
*
*/
public class Singleton {
private static Singleton instance = new Singleton(); // created when the class is loaded

/**
* Constructor is made private so that client cannot create instances
*/
private Singleton() {}

/** No synchronization needed, since instance exists, so all threads are just reading
*
* @return instance of singleton
*/
public static Singleton getInstance() {
return instance;
}
}
package designPatterns.creatingObjects.singleton;

public class Driver {
public static void main(String[] args) {
Singleton s1 = Singleton.getInstance();
Singleton s2 = Singleton.getInstance();
System.out.println(s1 == s2);

}
}



 

Comments

Popular posts from this blog

CICD Pipeline - Midterm Exam of Spring 2025 DevOps Class

Open Source Project - Open Energy Dashboard

2025 Spring CS686 DevOps - Final Project