1.设计模式罗列
创建型模式:关注类和对象创建过程;
结构性模式:关注类和对象的组合;
行为型模式:关注对象之间的通信过程;
(注:设计模式不是理论推导的结果,而是在解决实际问题过程中的经验总结)

2.单例模式
基本要求:某个类只能有一个实例对象;类中必须要有创建实例的方法,并向外提供实力对象;
具体实现要求:(1)类的构造方法需要私有(private,这样就不能在类外通过new来获取实例对象了);
(2)类需要有一个静态(static)的私有(private)的对象 (为了保证有且只有一个实例对象);
(3)提供一个共有的静态(static)方法,用以创建、获取静态私有对象;
单例模式两种实现方案:饿汉式和懒汉式
饿汉式:在类加载的时候,就完成静态私有对象的实例化,是一种空间换时间的策略;


注:构造方法只执行一次,即在类加载过程中被调用一次;
懒汉式:在类加载时没有进行静态私有对象的实例化,只有用的时候才通过getInstance()方法去实例化,一种时间换空间的策略;


注:构造方法只执行一次,即在使用的时候,通过调用getInstance()方法时才执行;
饿汉式和懒汉式比较:
(1)饿汉式第一次使用时速度很快,但实例对象一直在哪儿,一直占着空间;懒汉式第一次使用时速度慢;
(2)饿汉式是线程安全的;懒汉式存在线程风险;(先知道即可,后续深入了解)

总结:



具体哪些业务场景适合使用单例模式,需要逐渐摸索总结。
(

)
本文深入探讨设计模式的三大类型:创建型、结构性和行为型,重点解析单例模式的实现方式,包括饿汉式和懒汉式的优缺点及适用场景。
194

被折叠的 条评论
为什么被折叠?



