Use Design Pattern Singleton in Java to control the heap overflow

Design Pattern Singleton in Java

Singletons are useful to provide a unique source of data or functionality to other Java Objects. Design pattern singleton is used to control the heap overflow. It limits the user to create one object for a particular class. If we need to add more functionalities then we can create more objects.


Singleton is a class which has only one instance in whole application and provides a public static method to access the singleton instance.


The implementation involves a static member in the “Singleton” class, a private constructor and a static public method that returns a reference to the static member. A singleton is a class that is instantiated only once. It has a private constructor so that the class can’t be instantiated by outside classes.


Example –


Class EmployeeSalery{

Private EmployeeSalery(){

// class implementation


Private static EmployeeSalery empobj;
Public static getEmployeeObject(){

empobj=new EmployeeSalery();

Return empObj;
// You can also use this to create object
// return empobj == null ? empobj=new EmployeeSalery() : empobj;