设计模式笔记——Singleton
来源:互联网 发布:深海鱼油 知乎 编辑:程序博客网 时间:2024/06/10 01:31
单例模式Singleton
构造函数定义为private的作用是阻止类在外部被实例化。
定义显式构造函数则默认的构造函数会失效。
保证一个类仅有一个实例,并提供一个访问它的全局访问点。(定义一个静态方法)
package singleton.pattern;public class Singleton {private static Singleton instance;/** * 私有化构造函数 */private Singleton() {}/** * 单线程下的单例 * * @return */public static Singleton GetInstance() {if (instance == null) {instance = new Singleton();}return instance;}/** * 线程锁 */private static Object lock = new Object();/** * 多线程单例,要加锁 * * @return */public static Singleton GetInstance1() {synchronized (lock) {if (instance == null) {instance = new Singleton();}return instance;}}/** * 多线程单例,双重锁定,避免了GetInstance1()方法中进入方法都判断加锁的弊端 * * @return */public static Singleton GetInstance2() {if (instance == null) {synchronized (lock) {if (instance == null) {// 注意要再判断一次,防止一个线程执行完后释放// 了锁定又构造了一个实例instance = new Singleton();}}}return instance;}private final static Singleton instance1=new Singleton();/** * 获取已经实例化的instance1 * @return */public static Singleton GetInstance3(){return instance1;}}
- 设计模式笔记——Singleton
- 设计模式学习笔记——单例(Singleton)模式
- 设计模式学习笔记(九)—Singleton模式
- 设计模式学习笔记—单例模式(Singleton)
- 设计模式——singleton
- 设计模式——Singleton
- 设计模式学习笔记(一)——Singleton
- 设计模式——单键模式(singleton)
- 设计模式——单列模式 Singleton
- Singleton模式——设计模式学习
- C++设计模式——Singleton模式
- 设计模式学习笔记-Singleton
- 笔记:Gof设计模式--Singleton
- 设计模式(2)—Singleton模式
- 设计模式—Singleton单件模式
- JavaScript设计模式学习——Singleton
- ACE中的设计模式——Singleton
- 设计模式——单例Singleton
- BCM53262芯片开发手册----静态组播表
- 导图 SQL Server之SQL Server基础
- ARM&LINUX学习笔记(4)---ARM 体系结构
- SD卡驱动学习(二)
- 【栈】出栈顺序题目总结
- 设计模式笔记——Singleton
- RobotFramework用户说明书翻译稿第2.1节
- 导图 SQL Server之数据转换
- Environment API 翻译
- ios常见数据类型大小
- 杭电1150 Machine Schedule
- 如何为WordPress 分割大的XML文件【灵活小窍门】
- 向Exchange Server 2010数据库可用性组DAG中添加成员失败
- 杭电1020