提到单例模式的话相信很多人都不会陌生,一般初级程序员也知道懒汉模式和饿汉模式。 那么什么是单例模式呢?我个人低的理解就是当用这个类的对象的时候就只能创建同一个对象。是你,是你,还是你! 而在单例模式中又经常是懒汉和恶汉式进行加载。并没有痴汉也没有电车。。。我什么都不知道。 那么她的代码是怎么实现的呢 ...
分类:
其他好文 时间:
2017-09-10 20:51:41
阅读次数:
273
思想: 相比于懒汉以及饿汉模式,静态内部类模式没有一个较为官方的名称,这只是我个人的称谓。但是却是许多人更为推荐的一种形式。 顾名思义,这种模式使用了一个私有的静态内部类,来存储外部类的单例,这种静态内部类,一般称为 Holder。 而利用静态内部类的特性,外部类的 getinstance() 方法 ...
分类:
其他好文 时间:
2017-09-10 18:50:11
阅读次数:
102
思想: 相比于之前提及的饿汉模式,懒汉模式的实际应用场景更加广泛一些。 因为在系统中,大多数的类都不必在一开始就初始化,在第一次投入使用的时候再初始化就可以了,这样做最大的好处无疑就是节省了大片的内存空间。 设计的思想与饿汉模式类似,同样是持有一个自身的引用,只是将 new 的动作延迟到 getin ...
分类:
其他好文 时间:
2017-09-10 17:45:46
阅读次数:
133
1 package com.study.mode; 2 /** 3 * 单例模式: 懒汉式,需要的时候创建。 4 * @ClassName: SingleBean2 5 * @author BlueLake 6 * @date 2012年9月5日 下午9:08:21 7 */ 8 public cl... ...
分类:
编程语言 时间:
2017-09-10 17:41:44
阅读次数:
292
--主要: 饿汉式(线程安全,调用效率高,但是不能延时加载) 懒汉式(线程安全,调用效率低,但是可以延时加载) --其他: 双重检测锁式(由于JVM底层内部模型原因,偶尔会出现问题,不建议使用) 静态内部类式(线程安全,调用效率高,可以延时加载) 枚举式(线程安全,调用效率高,不能延时加载) -- ...
分类:
其他好文 时间:
2017-09-10 17:39:18
阅读次数:
160
1、单例模式: 确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 单例模式有以下几个要素: 私有的构造方法 指向自己实例的私有静态引用 以自己实例为返回值的静态的公有的方法 单例模式根据实例化对象时机的不同分为两种:一种是饿汉式单例,一种是懒汉式单例。饿汉式单例在单例类被加载时候,就 ...
分类:
编程语言 时间:
2017-09-09 22:28:30
阅读次数:
233
1、单例模式: 确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 单例模式有以下几个要素: 私有的构造方法 指向自己实例的私有静态引用 以自己实例为返回值的静态的公有的方法 单例模式根据实例化对象时机的不同分为两种:一种是饿汉式单例,一种是懒汉式单例。饿汉式单例在单例类被加载时候,就 ...
分类:
其他好文 时间:
2017-09-09 22:28:22
阅读次数:
191
目录: 1.线程安全单例模式的几种实现方式 2.同步容器 3.并发容器 一、线程安全单例模式的几种实现方式 1.饿汉式(不使用同步锁,典型的用空间换时间) 运行结果: 2.懒汉式(使用同步锁,延时加载,典型的时间换空间) 运行结果: 3.双重同步锁(缩小粒度,双重检查 运行结果: 为mySingle ...
分类:
编程语言 时间:
2017-09-06 15:49:39
阅读次数:
183
程序开发中,有些对象只需要一个,比如 配置文件/ 工具类/ 线程池/ 缓存/ 日志对象等.只需要一个单例模式: 可以保证某些对象在程序运行中只有唯一的一个实例.显然单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。 具体实现角度来说:o ...
分类:
其他好文 时间:
2017-09-04 11:00:59
阅读次数:
161