java中的对象和引用

时间:2011-12-17 18:06:22

标签: java reference

我很困惑,因为我是java的新手,在下面这段代码中创建了多少个对象和引用?

MyClass t = new MyClass();
MyClass s = new MyClass();
MyClass v = s;

请解释答案:

2 Objects
3 References

5 个答案:

答案 0 :(得分:6)

一张图片胜过千言万语:

enter image description here

答案 1 :(得分:2)

对象是使用new创建的类的实例。您使用new两次,因此有两个对象。 *

一般来说,变量是一个引用。 ** 所以有三个引用(tsv),尽管两个它们碰巧引用同一个物体。

<小时/> *当然,MyClass本身可能会在内部创建更多对象。

**除基本类型外,例如intfloat

答案 2 :(得分:2)

2对象和

3参考

如果你new你正在创建对象,那么有两个新的只需要两个对象

如果你定义

Foo a;// you have just created a reference

*注意:new只是一种创建对象的方法,它也可以使用其他方式创建

答案 3 :(得分:2)

所以你要创建一个新对象并在t中存储对该对象的引用。 s也是如此。然后,您将s引用分配给v(不创建新对象)。所以你有三个引用和两个对象。

答案 4 :(得分:0)

实际上,你的回答是错误的。这是相反的方式:

  

2个对象(前两行)

     

3个引用(t,s,v,v和s共享一个对象)