java有23种设计模式
每一种设计模式都是为了解决一类问题

单例模式:

  1. 解决对象有且只能有一个的问题<br /> 1. 构造器私有<br /> 2. 自己提供一个获取对象的方法<br /> 单例模式分为 懒汉模式 饿汉模式

饿汉模式缺点:

        一上来就创建对象 空占内存<br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/28889470/1654754249447-96156890-ab2b-4356-b4b8-5a8c6c705116.png#clientId=u35854a4d-63eb-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=193&id=ud43be983&margin=%5Bobject%20Object%5D&name=image.png&originHeight=241&originWidth=431&originalType=binary&ratio=1&rotation=0&showTitle=false&size=10807&status=done&style=none&taskId=ud0a4e352-77be-4fc3-b880-3e8745b3d1e&title=&width=344.8)

懒汉模式缺点:

        有线程安全问题     (可加锁解决  一次只实现一个对象访问)<br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/28889470/1654754264019-d2299b36-81ab-4375-a4ec-c5e8fb7686d9.png#clientId=u35854a4d-63eb-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=224&id=uc0d373ea&margin=%5Bobject%20Object%5D&name=image.png&originHeight=295&originWidth=637&originalType=binary&ratio=1&rotation=0&showTitle=false&size=16761&status=done&style=none&taskId=ufd0e955b-1822-4582-b08c-4a270e324dc&title=&width=484)