DEV Community

Ashutosh Dubey
Ashutosh Dubey

Posted on

What is singleton class in Java and how to implement it?

Introduction

A singleton class in Java is a type of class that can have only one instance at any given time. This is useful in ensuring that only one object of a particular class is ever created and used in an application, avoiding duplication of resources and improving performance.

How to Implement Singleton Class??

To implement a singleton class in Java, you need to make the class constructor private, so that no other class can create its own instance. You also need to declare a static instance of the class and initialize it in a static block. Finally, you need to create a public static method that returns the singleton instance.

To illustrate this, let's say we want to create a singleton class called Logger that logs messages to the console.
First, we'll make the class constructor private so that no other class can create its own instance:

private Logger() {

}
Enter fullscreen mode Exit fullscreen mode

Next, we'll declare a static instance of the class and initialize it in a static block:

private static Logger instance = null;

static {
    instance = new Logger();
}
Enter fullscreen mode Exit fullscreen mode

Finally, we'll create a public static method that returns the singleton instance:

public static Logger getInstance() {
    return instance;
}
Enter fullscreen mode Exit fullscreen mode

Now we can use the Logger class to log messages to the console. All other classes will be able to access the same instance of the Logger class, ensuring that no duplicate instances are created.

Conclusion

By using the singleton pattern, developers can ensure that only one instance of a particular class is ever created and used in an application, avoiding duplication of resources and improving performance.

Top comments (0)