码迷,mamicode.com
首页 > 其他好文 > 详细

String类的substring方法bug

时间:2014-09-28 18:46:56      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:java   string   substring   bug   

    今天再看JDK源码的时候看到了String类的不同版本的实现方式的不同,主要是substring这个方法,JDK6里面的实现方式是:

bubuko.com,布布扣

bubuko.com,布布扣

很明显可以看到,调用String对象的substring方法后指向的对象地址并没有发生改变,只是改变的是偏移量,这样的话在GC阶段就有可能造成内存泄露了。

  还好查了一下资料JDK7解决了这个问题,于是赶紧查看了JDK7的源码:

bubuko.com,布布扣

bubuko.com,布布扣

这个里面是通过内存复制的方式重新指向了一个新的地址,解决了内存泄露的隐患

本文出自 “陈砚羲” 博客,请务必保留此出处http://chenyanxi.blog.51cto.com/4599355/1559131

String类的substring方法bug

标签:java   string   substring   bug   

原文地址:http://chenyanxi.blog.51cto.com/4599355/1559131

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!