Java单例模式(设计模式之单例模式)

1.设计模式之终极结合最近几期博客打算主要讲一下单例模式、观察者模式、Build模式,目的是为了方便后期为大家带来RXJava+Retrofit2.0+Okhttp3结合使用的网络请求框架。2.单例模式介绍单例模式是我们使用的最娴熟的模式之一,也是我们App开发者必须会的模式之一。单例模式顾名思义就是在一个App/Project中一个单例对象类只存在一个实例。比如我们一个App中是不是...
摘要由CSDN通过智能技术生成

1.设计模式之终极结合

最近几期博客打算主要讲一下单例模式观察者模式Build模式,目的是为了方便后期为大家带来RXJava+Retrofit2.0+Okhttp3结合使用的网络请求框架。

2.单例模式介绍

单例模式是我们使用的最娴熟的模式之一,也是我们App开发者必须会的模式之一。单例模式顾名思义就是在一个App/Project中一个单例对象类只存在一个实例。比如我们一个App中是不是只有一个Application,里面的信息可以应用于整个App,这样我们可以节约很多资源。再比如我们一个App中是不是应该只有一个Glide框架,Glide是一个集缓存、网络请求、线程池等于一身的图片加载框架(类似于以前的ImageLoader现在已经不推荐使用了);这些都是非常消耗资源的,你不可能还实例化多个实例吧。这种为了节约资源应用于整个project,在整个project中只存在一个实例的模式就是单例模式。

3.单例模式定义

一个类中有且只有一个实例,当调用这个类时可以自动化实例并向整个Project(对于Android开发来说,准确一点是整个Module)提供这个实例。

4.单例模式使用最多的两种模式(双锁单例模式,静态内部类单例模式)

 

  • 双锁单例模式(Double Check Lock)

 使用多的原因:双锁模式线程安全且资源利用率高,只在第一次实例化的时候进行同步锁。例如Okhttp、Glide、EventBus等很多框架都有用到。

package com.admin;

import android.app.
  • 8
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值