定义使用共享对象可有效地支持大量细粒度的对象 使用场景 系统中存在大量的相似对象。细粒度的对象都具备较接近的外部状态,而且内部状态与环境无关,也就是说对象没有特定身份。需要缓冲池的场景。 案例JDK里面的String设计: String str1 = "abc";String str2 = "ab"+"c";str1 == str2 //true 这里面的string都是常量池里面。直接复用,不会创建新的对象。