首页 > 代码库 > 单例模式
单例模式
单例模式
1.概念:保证一个类仅有一个实例,并提供一个访问他的全局访问点
2. UML图:
3.代码:
(1)懒汉模式:只有在自身需要的时候才会创建。运行时获得对象,他在整个应用的生命周期只有一部分时间在占用资源
1 public class Singleton { 2 private static Singleton mSingleton; 3 4 public Singleton() { 5 } 6 7 public Singleton getInstance() { 8 if (mSingleton == null) { 9 mSingleton = new Singleton();10 }11 return mSingleton;12 13 }14 15 }
(2)饿汉模式:在类加载的时候就立即创建对象。加载类的时候创建对象,他从加载到应用借宿会一直占用资源。
1 public class Singleton { 2 3 private Singleton mSingleton = new Singleton(); 4 5 public Singleton() { 6 } 7 8 public Singleton getInstance() { 9 return mSingleton;10 }11 12 }
4.应用场景:
- PC机中可能有几个串口,但只能有一个COM1口的实例。
- 系统中只能有一个窗口管理器或任务管理器
- 在ListView中的Button的OnClickListener的监听就是用单例,来避免Button的状态回滚
单例模式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。