![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 74
小白伐
这个作者很懒,什么都没留下…
展开
-
设计模式:03-单例模式
单例的实现分为饿汉模式和懒汉模式。顾名思义,饿汉模式就好比他是一个饿汉,而且有一定的危机意识,他会提前把食物囤积好,以备饿了之后直接能吃到食物。对应到程序中指的是,在类加载时就会进行单例的初始化,以后访问时直接使用单例对象即可。饿汉模式的实现代码如下: 以上程序的执行结果为: 从上述结果可以看出,单例对象已经被成功获取到并顺利地执行了类中的方法。它的优点是线程安全,因为单例对象在类加载的时候就已经被初始化了,当调用单例对象时只是把早已经创建好的对象赋值给变量;它的缺点是可能会造成资源浪费,如果类加载了单例对原创 2022-06-27 17:38:45 · 172 阅读 · 0 评论 -
设计模式:02-观察者模式
一、使用场景: 适用于当一个对象的状态发生变化时主动去通知另一个对象的场景。 二、使用步骤: 1.定义被观察者类,该类继承java.util.Observable,并在类中提供一个给外部进行调用的方法,在该方法中需要进行两部操作: setChanged(); notifyObservers(xxx); 其中第二个方法调用中传入的值就是观察者收到的值。 示例类如下: package com.observer; import java.util.Observable; public class ShareO原创 2021-12-17 11:29:46 · 57 阅读 · 0 评论 -
设计模式:01-代理模式
一、使用代理模式的场景:对已经开发好的类进行功能增强(添加或修改),比如有一个接口: package com.proxy; public interface Animal { void dog(); void cat(); void monkey(); } 以及该接口的一个实现类: package com.proxy; public class Dog implements Animal { @Override public void dog() {转载 2021-12-16 17:21:54 · 62 阅读 · 0 评论