学习中设计模式的总结
首先要了解什么是设计模式呢?
设计模式:可以简单的理解为两个字“经验”,就是码农们在各种需求中间,总结出来的一种最优的解法称之为设计模式;
1|01,单例模式🎄
作用: 当系统中要求某个类只有一个实例的时候可以使用单例模式
生活中的应用: 比如windows中的任务管理器,只能打开一个窗口
写法:
- 构造器私有化
- 定义一个私有的类变量记住类的一个对象
- 定义一个类方法,返回对象
根据对象创建的时机不同,单例模式又分为两种:
先创建的称之为饿汉式,后创建的称之为 懒汉式
1,单例模式之饿汉式
因为比较饥饿,所以在还没有调用方法的时候就已经把对象创建好了,具体实现代码如下:
2,单例模式之懒汉式
顾名思义就是什么时候用,什么时候再创建好。实现代码如下:
两者对比,看似只是创建对象先后的问题,但是在安全上和性能上却有一些差异
饿汉式中的对象,是在类加载的时候创建的,但是后面如果不用,那么就会导致资源的浪费。但是一般不会不用,所以饿汉式是较为常用的方式
而懒汉式,多了if语句,这样对比饿汉式,就会多了一步比较的步骤,这样在性能上就有所损耗。但是主要的原因,还是在多线程的时候,如果多个线程,同时进入到if语句中,这个时候就会创建多个对象,从而不在是单例。
2|02,模板模式🎍
作用: 提高代码的复用性,减少冗余代码
应用场景: 在子类实现父类相同的功能的时候,由于业务的大同小异,使得子类中的代码有很多相同的部分,但是在代码中又需要穿插着子类自己的代码。
这个时候就可以把父类设计为抽象类,实现如下:
举个生活中的具体的案例。比如我们一天的工作,早晨大家都一样刷牙洗脸开始,晚上以泡脚结束。。。但是每个人一天的内容不同,是自己发挥的部分。那么实现的代码就可以这样写:
父类 OneDay:
子类:
测试类:
控制台:
__EOF__

本文作者:尼古拉斯_帅气
本文链接:https://www.cnblogs.com/yfs1024/p/17153828.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/yfs1024/p/17153828.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类