java的设计模式-单例模式
spring框架提供的bean对象就是单例模式的最好实现。
一般情况下的单例模式分为:懒汉模式和饿汉模式。顾名思义,懒汉模式则是你需要使用到这个对象的时候才会去创建实例。饿汉模式,则是类加载完成后,就会去创建一个实例,不论你是否使用。在实际的业务使用过程中,估计最常使用的就是饿汉模式,因为这个最简单也是最容易实现的,不用去考虑线程安全问题,而饿汉模式则需要去考虑线程安全问题。
1.饿汉式单例模式:
常规的饿汉模式代码:

在类加载完成后,就会直接创建Mgr01实例。
下面是改进版本的饿汉模式:
通过静态代码块的形式

2.懒汉式单例模式:

上面的涉及到线程不安全,创建的实力并不是同一个。
2.1改进版本的:(1.方法上加synchronized,在判断对象是否为空)

2.2改进版本的:(1.先判断对象是否为空,再在方法内加synchronized)

3.还有一种内部类的形式,也是线程安全的。


浙公网安备 33010602011771号