JAVA面试题解惑系列(二)——到底创建了几个String对象?62.docVIP

  • 0
  • 0
  • 约9.22千字
  • 约 8页
  • 2018-04-28 发布于贵州
  • 举报

JAVA面试题解惑系列(二)——到底创建了几个String对象?62.doc

JAVA面试题解惑系列(二)——到底创建了几个String对象?62

JAVA面试题解惑系列(二)——到底创建了几个String对象?我们首先来看一段代码: Java代码 String?str=new?String(abc);?? String str=new String(abc); 紧接着这段代码之后的往往是这个问题,那就是这行代码究竟创建了几个String对象呢?相信大家对这道题并不陌生,答案也是众所周知的,2个。接下来我们就从这道题展开,一起回顾一下与创建String对象相关的一些JAVA知识。 我们可以把上面这行代码分成String str、=、abc和new String()四部分来看待。String str只是定义了一个名为str的String类型的变量,因此它并没有创建对象;=是对变量str进行初始化,将某个对象的引用(或者叫句柄)赋值给它,显然也没有创建对象;现在只剩下new String(abc)了。那么,new String(abc)为什么又能被看成abc和new String()呢?我们来看一下被我们调用了的String的构造器: Java代码 public?String(String?original)?{ ?? ????//other?code?... ?? }?? public String(String original) { //other code ... } 大家都知道,我们常用的创建一个类的实

文档评论(0)

1亿VIP精品文档

相关文档