单例模式
1|0单列模式
一、静态引用变量直接实力例化对象
随着类装载就完成实例化
二、使用代码块,和一一样
三、懒汉式加载
前两个是类装载就完成实例化,不是当需要调用的时候才实例化
四、三的改进,加锁避免线程安全的问题,但是耗时,不高效
五、用静态代码块缩小锁的范围,但是还是会出现线程的问题
六、双重检查解决线程安全问题(volatie是用来解决JTI的指令重排问题,防止在没有初始化之前就返回instance)
七、用的最多的内部类的方式
外部类加载一次,内部类也只加载一次,实例化也只进行一次。而且外部类加载时是不加载内部类的,只有在调用这个内部类的时候才会加载。
八、effective java中提出的枚举写法是最好的单列模式
前面的单列模式都不能解决序列化问题,这个可以防止反序列化问题
__EOF__

本文作者:liuliu的小家
本文链接:https://www.cnblogs.com/liu-jin/p/17398120.html
关于博主:hello~好久不见,喜欢的话点个赞吧
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/liu-jin/p/17398120.html
关于博主:hello~好久不见,喜欢的话点个赞吧
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)