对象维度的复用,字符串池 <!-- more --> ## 场景 数字 1 可能在代码中到处要使用,没用就开辟一次空间吗? ## 与线程池的区别 同时使用和重复使用的区别 IntegerCache 的 -128 到 127,或者串池中的 "a",都是 immutable 的,可以被两处同时使用。 线程池中的线程 a,一个时刻只能被一处使用,只是用完不回收,可以被另一处复用 ## 注意点 JVM 的内存回收机制对享元模式不太友好,享元工厂类会一直存在指向享元对象的引用,所以内存永远不会被回收。如果这类对象很多,又不会真的被同时大量使用,可能会占用很大的内存空间。