定义应用场景优点缺点 定义 提供了减少对象数量,从而改善应用所需的对象结构的方式。应用共享技术有效地支持大量细粒度的对象。隶属于结构型设计模式 应用场景常常应用于系统底层开发,以便解决系统的性能问题。 string 、数据库连接池 系统有大量的相似对象,需要缓冲池的场景 优点 减少对象的创建,降低内存中对象的数量,降低系统的内存,提高效率。减少内存之外的资源占用。比如new需要消耗时间和资源 缺点 关注内/外部的状态,关注线程安全问题使得系统程序的逻辑复杂化