单例模式
单例模式就是保证在整个应用程序的生命周期中,在任何时刻,被指定的类只有一个实例,并为客户程序提供一个获取该实例的全局访问点。
静态内部类 public class Singleton6 { private Singleton6() { } private static class SingletonInstance { public static Singleton6 Instance = new Singleton6(); } public static Singleton6 Instance() { return SingletonInstance.Instance; } } 适用:单/多线程 模式:静态内部类(线程安全)[推荐] 优点:避免了线程不安全;延迟加载;效率高(这种方式跟饿汉式方式采用的机制类似:都是采用了类装载的机制来保证初始化实例时只有一个线程。不同的地方是:饿汉式只要Singleton类被装载就会实例化,没有Lazy-Loading的作用;而静态内部类方式在Singleton类被装载时并不会立即实例化,而是在需要实例化时,调用Instance方法,才会装载SingletonInstance类,从而完成Singleton的实例化。) 缺点:基本没有