String类好特殊
各位大哥:
String类很特殊。那下面二个语句是不是等价的:
String Str=new Str("abc");
String Str="abc";
java中的String确实设计的特殊一点.
但那有什么关系呢,你把它当作普通类来使用就得了.
比如String str ="abc";究竟它是在堆里面还是在栈里面对你使用它有什么影响呢?
只要记得比较两个字符串是否一样用要用equals方法而不要用==就可以了.
当然,如果你能够了解String特殊性也是好的,只是作为刚入门的JAVA学习者没必要困扰在这一点上.
要知道高级语言之所以高级,就是能够掩藏那些底层的实现细节.你只要会用那些API就OK了,至于它具体如何实现的,当你的水平再高一点的时候,可以看更高阶一点的书,比如<深入Java虚拟机>之类的,这种问题就很容易从根本上解决了.