package com.github.lazylibrary.util; /** * Singleton helper class for lazily initialization. * * @author Trinea * * @param 泛型 */ public abstract class SingletonUtils { private T instance; protected abstract T newInstance(); public final T getInstance() { if (instance == null) { synchronized (SingletonUtils.class) { if (instance == null) { instance = newInstance(); } } } return instance; } }