本帖最后由 mweibiao 于 2011-07-02 16:48:44 编辑

解决方案 »

  1.   

    1.如果只用String a = new String("aaa");创建,池中不会有"aaa"
    2.确实只是为了速度
    3.没有方法,也没有必要知道
      

  2.   

    a 是引用,引用对象被保存在栈中了new String("aaa") 这个对象被保存在堆中了  
    "aaa" 不知道是保存到哪里去了,不敢乱说,可以看看java language reference,不过我感觉看完也不会有什么提供字符串池? 这种说法已经很久没有听人提起了,你是看了 String java.lang.String.intern()中的doc。String使用的是flyweight模式,flyweight 能够有效的降低空间
      

  3.   

    1.如果只用String a = new String("aaa");创建,池中会有"aaa"