单例模式

一、为什么用单例和多例

  1.之所以用单例,没必要每次请求都要创建一个实例,这样既浪费CPU又浪费内存;

  2.之所以用多例,防止并发问题;即请求A改变了对象的状态,现在该对象又去处理请求B,由于请求A改变对象状态导致请求B的结果出错;

  3.单例和多例的使用标准

  对象中含有可变的状态(如类的成员变量)时,使用多例,否则使用单例;

  4.Struts2的Action是单实例还是多实例,Spring的Controller是单实例还是多实例?

    参考博文:https://blog.csdn.net/chengyuqiang/article/details/78776767

    https://blog.csdn.net/diaosinixiheixiu/article/details/78918881(值栈)

    https://blog.csdn.net/abc86319253/article/details/39289767

二、

  1.

  2.  

  3.

  4.静态内部类实现懒加载

  参考博文(静态内部类何时被初始化):https://www.cnblogs.com/maohuidong/p/7843807.html  

原文地址:https://www.cnblogs.com/lmmblogs/p/9116365.html