单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗-创新互联

设计模式之单例模式-单例模式的几种实现方式及小案例

神农架林区网站建设公司成都创新互联公司,神农架林区网站设计制作,有大型网站制作公司丰富经验。已为神农架林区上千多家提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的神农架林区做网站的公司定做!

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

本文来源:凯哥Java(wx:kaigejava)

单例模式有几种?饿汉式、懒汉式。这两种是最常见的。还有几种是对其扩展的。具体如下:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

我们可以从上图看到,共有六种方式。

其中在懒汉式基础上扩展的有两种。即:加锁的懒汉式及双重判断加锁的懒汉式

还有一种是使用内部类实现的。即:内部静态类的

最后一种是比较少见的。使用枚举的。

我们来看看每种方式代码都怎么写。

联系凯哥--》公众号:凯哥Java(kaigejava)

凯哥个人博客:www.kaigejava.com

懒汉式:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

我们来看看懒汉式优缺点:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

饿汉式:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

饿汉式的优缺点及适用场景:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

加锁的懒汉式:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

再来看看加锁懒汉式的由来:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

双重判断加锁的懒汉式:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

有了加锁的懒汉为什么还会有加锁双重判断的呢?这种由什么优缺点呢?请看下图:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

内部静态类是实现的懒汉式:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

这种模式的有缺:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

使用枚举:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

优点缺点:

单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

我们使用单例模式做个小案例。

创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。


分享名称:单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗-创新互联
标题来源:http://scyanting.com/article/dsissc.html