![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 77
Java的23种设计模式
JYWWABF
I'm willing to do anything but ordinary.
展开
-
【设计模式】-单例模式
如果对象不存在时,多个线程执行第二行,很有可能都会进入到if方法体中,虽然同一时刻只有一个线程可以获取锁,但是进来的线程已经都在队列中了。如果不加第四行的判断,进来的线程迟早都会获取到锁资源,进而实例化一个新的对象。原理:维护一组单例类的实例,将这些实例存放在一个单例Map中,对于已经登记过的实例,则从Map直接返回,对于没有登记的,则先登记,然后返回。饿汉式,在类创建的同时就已经创建好一个静态的对象,并且以后都不需要重新创建,所以不存在线程不安全的问题。我用的比较少,感兴趣的可以去搜一下。原创 2022-05-22 21:18:47 · 326 阅读 · 0 评论 -
【设计模式】-工厂方法模式
该工厂类的子类负责具体的对象创建,每个子类都可以通过实现工厂接口的方式来创建自己的对象。在实际应用中,我们经常需要根据不同的条件或者参数来创建不同的对象。使用工厂方法模式,我们可以通过不同的工厂子类来创建不同的对象,而无需在使用对象的地方编写判断条件或者创建对象的具体代码。原创 2023-08-06 00:41:48 · 671 阅读 · 0 评论 -
【设计模式】-建造者模式
建造者模式通过将对象的构建过程与表示分离,使得同样的构建过程可以创建不同的表示。它可以帮助我们创建复杂的对象,并保证对象的构建过程可配置和可扩展。在实际应用中,建造者模式具有较高的灵活性和可扩展性。原创 2023-08-06 02:19:48 · 1192 阅读 · 0 评论 -
【设计模式】-代理模式
在软件开发中,经常遇到需要对某个对象进行控制或者监控的场景。而直接修改对象的代码可能使代码变得复杂且难以维护。这时,使用代理模式(Proxy Pattern)可以很好地解决这个问题。代理模式是一种结构型设计模式,,实现对原有对象的控制或扩展。Java中的代理模式常用于实现日志记录权限控制事务控制等功能。原创 2023-08-07 12:27:55 · 920 阅读 · 0 评论 -
【设计模式】-装饰器模式
首先,我们需要定义一个接口或抽象类,它定义了核心功能的方法。这个接口或抽象类是被装饰的对象的类型,也是装饰器对象的类型。接下来,我们定义一个装饰器类,它实现了相同的接口或抽象类,并且持有一个核心功能对象的引用。} }原创 2023-08-07 15:50:01 · 1371 阅读 · 0 评论