官术网_书友最值得收藏!

  • Spring 5 Design Patterns
  • Dinesh Rajput
  • 243字
  • 2021-07-08 09:59:32

Singleton design pattern

Ensure a class has only one instance and provide a global point of access to it - GOF Design Patterns

The Singleton pattern is a creational design pattern, it is one of the simplest design patterns in Java. According to the singleton design pattern, the class provides the same single object for each call--that is, it is restricting the instantiation of a class to one object and provides a global point of access to that class. So the class is responsible for creating an object and also ensures that only a single object should be created for each client call for this object. This class doesn't allow a direct instantiation of an object of this class. It allows you to get an object instance only by an exposed static method.

This is useful when exactly one object is needed to coordinate actions across the system. You can create a single pattern using two forms, as listed here:

  • Early instantiation: Creation of instance at load time
  • Lazy instantiation: Creation of instance when required

Benefits of the Singleton pattern:

  • It provides controller access to crucial (usually heavy object) classes, such as the connection class for DB and the SessionFactory class in hibernate
  • It saves heaps of memory
  • It is a very efficient design for multithreaded environments
  • It is more flexible because the class controls the instantiation process, and the class has the flexibility to change the instantiation process
  • It has low latency
主站蜘蛛池模板: 青川县| 桃园县| 庆元县| 易门县| 云安县| 额济纳旗| 三原县| 泊头市| 衡山县| 海淀区| 永仁县| 克什克腾旗| 广西| 郑州市| 根河市| 廉江市| 平潭县| 武胜县| 蓝田县| 麻阳| 历史| 枞阳县| 常德市| 百色市| 沐川县| 上蔡县| 慈利县| 龙海市| 上犹县| 金乡县| 桃江县| 馆陶县| 湖州市| 宣化县| 图们市| 麻阳| 资源县| 民县| 棋牌| 奇台县| 高陵县|