1.什么是‘设计模式’之前很多程序员经过无数次的尝试,总结出一套最佳的写代码的套路
是一套被反复使用,多数人知晓的,经过分类的,代码设计经验的总结
2.什么是‘单例’设计模式
单例:一个类在内存中只有一个对象,鄙人不能再去创建对象。
应用场景:在写一个工具类的时候。
工具类就是:我们在完成某个功能时,总是会反复使用的一类方法,这些方法就只有传进去的参数有变化。
为了避免代码重复,我们就可以把这些大量重复的代码,(方法,字段)统一存放在一个类中,我们要用这些方法,就直接通过这个类调用。
这个过程就好像木匠造了一把锤子,他整个工程就使用这一把锤子,并不需要每钉一根钉子就重复造一柄锤子,麻烦。
具体要求:这些要求俗称“饿汉模式” (好逗比的名字)
PS:一上来就直接创建好对象就叫饿汉模式 使用时再创建叫“懒汉模式”
1.必须得要在该类中创建一个对象出来
2.必须私有化自己的构造器,防止外界通过构造起来创建新的对象
3.给外界提供一个方法,能够获取已经创建好的对象。
简单来说,就是:
阻止外界重复创建对象,免得浪费内存。
作为补偿,给外界一个方法来让外界能拿到我这个对象。
代码举例:
第一步用static修饰 是因为 第三步 我们想让其它类直接通过类来调用
方法加了static 那么里面的成员也得是static了 所以return的是一个static 第一步自然要用相同的类型static来接收
单例设计模式优点:1.控制资源的使用
2.控制实例的产生数量,达到节约资源的目的
3.作为通信媒介,数据共享
注意事项:
我们这种饿汉单例设计模式 所写成的工具类 无法被继承extend
因为我们把构造器私有化了private
但不是所有的单例设计模式都无法被继承,其它形式的单例有的是可以被继承的
其它:图片出自高新强老师Java网课
结语:
人生苦短,祝君成功,有缘江湖见!