java design patterns 设计模式整理

单例模式 singleton

public class Tool {
    private volatile static Tool instance;

    private Tool(){}

    public static Tool getInstance() {
        if (null == instance) {
            synchronized {
                if (null == instance) {
                    instance = new Tool();
                }
            }
        }
        return instance;
    }
}