首页 相关文章 让你更深入的了解String

让你更深入的了解String

  1、"abc"与new String("abc");
  经常会问到的面试题:String s = new String("abc");创建了几个String Object?

  这个问题比较简单,涉及的知识点包括:

  引用变量与对象的区别;
  字符串文字"abc"是一个String对象;
  文字池[pool of literal strings]和堆[heap]中的字符串对象。
  一、引用变量与对象:除了一些早期的Java书籍和现在的垃圾书籍,人们都可以从中比较清楚地学习到两者的区别。A aa;语句声明一个类A的引用变量aa[我常常称之为句柄],而对象一般通过new创建。所以题目中s仅仅是一个引用变量,它不是对象。[ref 句柄、引用与对象]

  二、Java中所有的字符串文字[字符串常量]都是一个String的对象。有人[特别是C程序员]在一些场合喜欢把字符串"当作/看成"字符数组,这也没有办法,因为字符串与字符数组存在一些内在的联系。事实上,它与字符数组是两种完全不同的对象。

  System.out.println("Hello".length());
  char[] cc=...[ 查看全文 ]

2016-02-19 标签:

让你更深入的了解String的相关文章

手机页面
收藏网站 回到头部