试题详情
简答题简要分析String的subString()方法造成内存泄漏的原因。
  • substring()方法的实现中使用以下形式构造新的字符串:
    new String(offset+beginIndex,endIndex-beginIndex,value);
    该构造方法实现如下:
    String(intoffset,intcount,charvalue[]){
    this.value=value;
    this.offset=offset;
    this.count=count;
    }
    可见,并没有对value进行裁剪,只是设置了偏移量。因此使用subString()会造成泄漏。
  • 关注下方微信公众号,在线模考后查看

热门试题