Android 中的getInstance()

以下是一个CacheManager类

public class CacheManager {

private static CacheManager uniqueInstance = null;
private Object holdedShareContent = null;

private CacheManager() {
}

public static CacheManager getInstance() {
    Object obj = new Object();
    synchronized (obj) {
        if (uniqueInstance == null) {
            synchronized (obj) {
                uniqueInstance = new CacheManager();
            }
        }
    }
    return uniqueInstance;
}

}

这个类当中有一个getInstance()静态方法,是一个单例模式,有以下几个特点:

1:属于懒汉模式,即当某一处需要CacheManager对象时,调用getInstance方法,这个方法会首先判断是否存在CacheManager对象,如果存在,就直接给,不存在的话再重新new 一个。
2:由于一般getInstance方法是静态的,所以很多地方都可以拿到这个对象,而且是同一个对象,存储在栈的静态区域块内,节省内存。

你可能感兴趣的:(Android 中的getInstance())