您的位置:首页 > 编程语言 > Java开发

Java 基本数据类型和对象类型

2011-09-07 22:48 369 查看
基本数据类型在栈中进行分配,而对象类型在堆中进行分配。

所有方法的参数都是在传递引用而非本身的值(基本类型例外)。

对象之间的赋值只是传递引用,基本类型之间的赋值是创建新的拷贝。

例如: String a = "china";

String b =a; 则a、b都指向常量池的"china"。

String a = new String("china");

String b =a; 则a、b都指向堆中的"china"。

String a = new String("china");

String b =a;

a = a.substring(0,1);

则b指向栈中的"china",a指向新的对象"c"。

对于基本类型,“==”和“!=”是在比较值。而对于对象来说,“==”和“!=”是在比较两个引用是否相同。

使用equals()方法有一点需要注意:equals()方法的默认行为是比较引用。如果是你自己写的类,你应该为它重写equals()来比较对象的内容。大多数Java类库都实现了比较对象内容的equals()方法。

字符串操作符的特性:如果表达式以一个字符串起头,那么后面的操作数都会被自动转换为字符串型。所以有时候看到一个空的String后面+一个基本类型变量,这是一种简单执行字符串转换的方式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: