定义
单例模式:就是全局唯一,并且所有程序都可以使用的对象,就是单利模式。目的是保证一个类只能有一个实例,而且自行实例化并向整个系统提供这个实例,避免频繁创建对象,节约内存。
单例模式分为恶汉和懒汉两种方式:
饿汉方式
饿汉方式:在类加载时就完成了初始化,所以类加载比较慢,但获取对象的速度快。
优点:实现简单、不存在线程安全的问题,因为饿汉的方式是随着程序的启动而初始化的,因为类加载是线程安全(类加载补充在下面),所以它是线程安全的。
缺点:随着程序的启动而启动,有可能在整个程序的运行周期里面都没有用到,这样就带来了不必要的开销。
懒汉方式:不见兔子不撒鹰,他不会随着程序的启动而初始化,而是等到有人调用它时,他才会初始化
具体的代码实现:
饿汉式:
public class Singledemo {
//恶汉模式
//第一步,先将构造方法私有化