作者noapaov (单身汉)
看板java
标题[问题] string pool 疑问
时间Wed May 20 22:09:03 2015
请问一下各位 , 关於string pool的问题
据我所知, 建立String有两种方法, 但结果不太一样, 网路上查了一下
String string = "Cat";
String string = new String("Cat");
采用第一种方法,会先检查string pool是否有相同的string。若有就共用,没有则建立之。
采用第二种方法﹐不会使用到string pool机制,而是在heap建立一个新的string object。若之後想要使用string pool机制,可以使用intern。
其实我想问的是, 如果都使用方法一, string pool里占用的记忆体会释放吗?
如果不会释放, 不是很容易造成 memory leak吗? 这有方法避免吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.34.181.227
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1432130945.A.09B.html
1F:推 LaPass: 不用担心这种问题,JVM会替你搞定一切 05/20 22:55
2F:推 gtr99: 或者得到一个 java.lang.OutOfMemoryError 05/27 23:23
3F:→ gtr99: 但我猜你会想得到一些关键字 StringBuffer StringBuilder 05/27 23:24