日期:2014-05-20  浏览次数:20646 次

粉嫩新人求牛人解惑啊
是关于String的 

String 不属于8种基础数据类型,为什么能有像8种基础数据类型那样的写法呢?例:String a=“字符串”

我没见过其他的类是这样写的啊,很奇怪啊,为什么String能这么写呢


求牛人解惑啊
String

------解决方案--------------------
String是lang包中的一个类,
但java中绝大多数地方都可以当作基本数据类型来使用,
      如:String s = "asd";
  它等价于:
          char data[] = {'a', 'b', 'c'};
         String str = new String(data);
Java对它自己的String类采取了一些特殊措施使得这个类支持+,+=操作符,所以看起来像个原始数据类型。
------解决方案--------------------
引用:
String是lang包中的一个类,
但java中绝大多数地方都可以当作基本数据类型来使用,
      如:String s = "asd";
  它等价于:
          char data[] = {'a', 'b', 'c'};
         String str = new String(data);
Java对它自己的String类采取了一些特殊措施使得这个类支持+,+=操作符,所以看起来像个原始数据类型。

底层自动封装了,你这样写String str = "abc"; 其实底层帮你实现了 String str = new String("abc").因为字符串比较常用,所以给他一个方便的写法。