设计模式1懒汉模式和饿汉模式

编程

单例模式和名字一样就是只有单个实例对象存在,有时候我们只需要一个对象如果每次都new一个一样的,这样会给JVM的内存造成负担从而也会是GC时间变长。比如我们使用Spring的时候Bean默认都是单例的,因为我们只要使用里面的一些统一的执行方法,不需要到多态的特性。

在Spring中,bean可以被定义为两种模式:prototype(多例)和singleton(单例)

singleton(单例):只有一个共享的实例存在,所有对这个bean的请求都会返回这个唯一的实例。

prototype(多例):对这个bean的每次请求都会创建一个新的bean实例,类似于new。

Spring bean 默认是单例模式。

2.懒汉模式

懒汉可以理解为拖延症,要等到deadline的时候才去处理。也就是再第一次调用的时候采取生成对象。当然这样最并发放的情况下会出现多创建对象,加锁又会影响性能。

3.饿汉模式

饿汉模式就是已经急不可耐了,在系统启动的时候就要创建出来。这样的好处就不会出现懒汉模式并发的问题,缺点就是影响启动时间,如果没用到的话会占用内存。

以上是 设计模式1懒汉模式和饿汉模式 的全部内容, 来源链接: utcz.com/z/515163.html

回到顶部