常用设计模式-单例的几种实现方式
来源:互联网 发布:网络商品交易 编辑:程序博客网 时间:2024/05/16 03:00
1.什么事单例模式?
&&:单例模式可以保证系统一个对象只有一个实例。如果希望在一个系统中只有一个对象实例,单例是不错的;
2.饿汉方式创建单例
/**
* 饿汉模式 典型的以空间换时间的模式。 * Created by admin on 2017/2/27. */public class SingletonTest { private final static SingletonTest s = new SingletonTest(); public static SingletonTest getS(){ return s; } /** * 一个私有的构造方法,使得外部对象无法创建实例。 */ private SingletonTest(){ }
3.懒汉方式创建单例
/** * 懒汉方式创建单例 * Created by admin on 2017/2/27. */public class SingletonTest2 { private static SingletonTest2 s2 = null; public static SingletonTest2 getS(){ if(s2==null){ return new SingletonTest2(); }else { return s2; } } private SingletonTest2(){ }}
4.内部类方式实现单例
/** * 内部类方式保证单例 * Created by admin on 2017/2/27. */public class Singleton3 { static class SingletonHolder{ static Singleton3 s3 = new Singleton3(); } public static Singleton3 getS(){ return SingletonHolder.s3; } private Singleton3(){};}
5.双重锁方式实现单例
/** * 双重锁解决了线程等待的问题 * Created by admin on 2017/2/27. */public class SingletonDouble { private volatile static SingletonDouble sd = null; public static SingletonDouble getSd(){ if(sd==null){ synchronized (SingletonDouble.class){ sd = new SingletonDouble(); return sd; } }else { return sd; } } private SingletonDouble(){ }}
1 0
- 常用设计模式-单例的几种实现方式
- 设计模式——单例模式的几种实现方式
- 设计模式—单例模式的几种实现方式
- 单例的几种常用的设计模式(面试)
- 马士兵设计模式笔记1之单例的几种实现方式
- 【Android进阶】设计模式------Singleton单例的几种实现方式
- 单例模式几种实现方式
- 单例模式的几种实现方式的对比
- 单例模式singleton的几种实现方式
- 单例模式的几种实现方式
- 单例模式的几种实现方式
- 单例模式的几种实现方式比较
- C#单例模式的几种实现方式
- 单例模式的几种实现方式总结
- 单例模式的几种实现方式
- 单例模式的几种实现方式
- Java单例模式的几种实现方式
- 单例模式的几种实现方式
- ionic按模块加载
- 编程:确定两串乱序同构Java
- Android studio 中使用svn
- Android性能优化
- codeforces 779A
- 常用设计模式-单例的几种实现方式
- 基于LDAP的用户管理数据结构
- 工具链环境变量配置
- 程序的装入方式
- ZK生成全局id
- Android SDK 1-23与API版本的对应关系
- 编程:空格替换Java
- Android系统架构
- LeetCode-Greedy- 122. Best Time to Buy and Sell Stock II