设计模式----单例模式(singleton)
单例就是唯一的意思。
第一种单例实现方式(在多线程环境中存在不安全因素)
SingletonPattern.java代码如下:
package com.designPattern.singleton;/** * 单例模式的第一种实现方式 * @author yangjianzhou * */public class SingletonPattern {private static SingletonPattern singletonPattern = null;/** * 将构造函数的修饰符设置为private的目的就是不能直接产生一个实例 */private SingletonPattern(){}/** * 在多线程的环境中,这里会不安全 * @return */public SingletonPattern getInstance(){if(this.singletonPattern==null){this.singletonPattern = new SingletonPattern();}return this.singletonPattern;}}
package com.designPattern.singleton;/** * 单例模式的第一种实现方式 * @author yangjianzhou * */public class SingletonPattern2 {private static final SingletonPattern2 singletonPattern = new SingletonPattern2();/** * 将构造函数的修饰符设置为private的目的就是不能直接产生一个实例 */private SingletonPattern2(){}/** * 在多线程的环境中,这里会不安全 * @return */public synchronized SingletonPattern2 getInstance(){return this.singletonPattern;}}