设计模式—单例模式
来源:互联网 发布:手机怎么申请淘宝直播 编辑:程序博客网 时间:2024/06/06 13:06
单例模式:
应用场合:一个类在内存中只存在一个对象,保证整个应用程序中某个实例有且只有一个。
类型:饿汉模式,懒汉模式
- 饿汉模式
/** * 饿汉模式 * */public class Singleton {// 1.将构造函数私有化private Singleton() {}// 2.创建唯一实例,并初始化private static Singleton instance = new Singleton();// 3.提供一个获取实例的接口public static Singleton getInstance() {return instance;}}
- 懒汉模式(对象的延时加载)
/** * 懒汉模式 * */public class Singleton2 {// 1.将构造函数私有化private Singleton2() {}// 2.创建唯一实例,不初始化private static Singleton2 instance;// 3.提供获取实例的接口public static Singleton2 getInstance() {if (instance == null) // 判断是否为空instance = new Singleton2();return instance;}}
测试类
public class Test {public static void main(String[] args) {/** * 饿汉模式 */Singleton s1 = Singleton.getInstance();Singleton s2 = Singleton.getInstance();if (s1 == s2) {System.out.println("s1和s2是同一个实例");} else {System.out.println("s1和s2不是同一个实例");}/** * 懒汉模式 */Singleton2 s21 = Singleton2.getInstance();Singleton2 s22 = Singleton2.getInstance();if (s21 == s22) {System.out.println("s21和s22是同一个实例");} else {System.out.println("s21和s22不是同一个实例");}}}
区别:
饿汉模式加载类时比较慢,运行时获取对象的速度比较快,线程安全的;
懒汉模式加载类时比较快,运行时获取对象的速度比价慢,线程不安全的。
解决懒汉模式线程不安全方法:
/** * 懒汉模式 线程安全 * */public class Singleton3 {// 1.将构造函数私有化private Singleton3() {}// 2.创建唯一实例,私有静态化private static Singleton3 instance;// 3.提供获取实例的接口public static Singleton3 getInstance() {//这样可以减少判断锁的次数if (instance == null) {synchronized (Singleton3.class) {if (instance == null)instance = new Singleton3();}}return instance;}}从Java1.5开始,还可以编写一个包含单个元素的枚举类型:
public enum Singleton3{ INSTANCE;}
0 0
- 设计模式—单例设计模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- 设计模式——单例模式
- jQuery编程基础精华03()
- poj 1088 滑雪
- 快速初始化 NSArray *viewControllers = @[viewController1, viewController2];
- 探索工作流(七)--流程实例持久化
- Python算24点
- 设计模式—单例模式
- Arduino代码机制-引脚读写
- Java Gis 拓扑图(Google 地图)
- 电商后台制作遇到的问题
- 财富说--财富背后的秘密
- C++类模板
- php 调试防止超时
- Android_SDK_Windows免费下载链接
- 观影小结