B
BlogSmoke
LLD

Design Patterns: Singleton in Practice

llddesign-patternssingleton

Singleton Design Pattern

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

Java Example

public class DatabaseConnection {
  private static DatabaseConnection instance;

  private DatabaseConnection() {}

  public static synchronized DatabaseConnection getInstance() {
    if (instance == null) {
      instance = new DatabaseConnection();
    }
    return instance;
  }
}

When to Use

  • Database connections
  • Logger instances
  • Configuration managers