Android设计模式学习之单例模式

原创 2015年07月09日 18:58:10

搜集的资料:

http://blog.csdn.net/banketree/article/details/24985607  Android 设计模式

http://mobile.51cto.com/ahot-418968.htm   Android进阶之大话设计模式

第一天:

单例模式,http://blog.csdn.net/liguangzhenghi/article/details/8076361、   http://blog.csdn.net/jason0539/article/details/23297037

单例模式的特点:
首先,单例模式使类在程序生命周期的任何时刻都只有一个实例,然后,单例的构造函数是私有的,外部程序如果想要访问这个单例类的话,必须通过 GetInstance()来请求(注意是请求)得到这个单例类的实例。

即:

1、单例类只能有一个实例。
2、单例类必须自己创建自己的唯一实例。
3、单例类必须给所有其他对象提供这一实例。

单例常用的两种模式:饿汉模式和懒汉模式

饿汉式和懒汉式区别
1、线程安全:
饿汉式是线程安全的,可以直接用于多线程而不会出现问题,懒汉式就不行,它是线程不安全的,如果用于多线程可能会被实例化多次,失去单例的作用。
如果要把懒汉式用于多线程,有两种方式保证安全性,一种是在getInstance方法上加同步,另一种是在使用该单例方法前后加双锁。
2、资源加载:
饿汉式在类创建的同时就实例化一个静态对象出来,不管之后会不会使用这个单例,会占据一定的内存,相应的在调用时速度也会更快,
而懒汉式顾名思义,会延迟加载,在第一次使用该单例的时候才会实例化对象出来,第一次掉用时要初始化,如果要做的工作比较多,性能上会有些延迟,之后就和饿汉式一样了。

如果不需要外部通过构造函数传入参数的话,就用饿汉式,否则的话就用懒汉式。用懒汉式的时候要记得考虑线程安全的问题。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Android设计模式学习笔记(单例模式)

Android设计模式学习笔记(单例模式) 注:该学习笔记来源于《Android 源码设计模式解析与实战》一书 5种实现方式 1、懒汉模式 2、Double Check Lock(DCL)...

设计模式实例学习-单例模式(Android中的使用场景)

设计模式实例学习-单例模式标签: 设计模式定义 单例模式,故名思议,是指在一个类中通过设置静态使得其仅创造一个唯一的实例。这样设置的目的是满足开发者的希望——这个类只需要被实例化创建一次,同时因...

Android设计模式——单例模式

单例设计模式,对于系统中的单个对象的要求的首选模式

android设计模式之单例模式

定义:确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 类型:创建类模式 类图: 类图知识点: 1.类图分为三部分,依次是类名、属性、方法 2.以...

Android设计模式系列-单例模式

单例模式,可以说是GOF的23种设计模式中最简单的一个。 这个模式相对于其他几个模式比较独立,它只负责控制自己的实例化数量单一(而不是考虑为用户产生什么样的实例),很有意思,是一个感觉上...

Android开发设计模式之——单例模式

单例模式是设计模式中最常见也最简单的一种设计模式,保证了在程序中只有一个实例存在并且能全局的访问到。比如在android实际APP 开发中用到的 账号信息对象管理, 数据库对象(SQLiteOpenH...

Android 设计模式 笔记 - 单例模式

定义: 确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 实现单例模式的关键点: 构造函数不对外开放通过静态方法或者枚举返回单例类对象。确保单例类的对象只有一个,不管是不是...

初识单例模式——Android设计模式

一、单列模式的定义 确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 二、单例模式的使用场景 确保某一个类有且只有一个对象的场景,避免产生多个对象消耗过多的资源,或者某种类型的对象只...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)