当前位置:  技术问答>java相关

谁能说出原因???

    来源: 互联网  发布时间:2015-11-20

    本文导语:  Variable vi = (Variable) vars.get(v.name); vi.setValue(value, ii); 这两句话的功能是从  vars (一个B树)中取出一个Variable类型变量,赋给 Vi, 再修改Vi的Value。  这样就把vars中相应的值改变了。 按照一般的想法,如果通过...

Variable vi = (Variable) vars.get(v.name);
vi.setValue(value, ii);

这两句话的功能是从  vars (一个B树)中取出一个Variable类型变量,赋给 Vi,
再修改Vi的Value。  这样就把vars中相应的值改变了。
按照一般的想法,如果通过拷贝赋值,修改vi的属性应该不会影响vars中的值。
难道在java中 对象的赋值是引用赋值(即像在c++中的地址引用)?

哪位大侠给个解释,谢谢了!

|
按您的代码,是要变的!
var里面的和vi都指向同一个地方,无论哪个变了,另一个也变

|
可以通过clone()方法复制对象

|
对啊,在Java中Object的赋值是引用赋值,而基本类型是直接传递值

|
用clone()

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 大家讨论一下用QT及OSS实现LINUX下的录音程序的方法,说出想法就给分
  • 哪位有讨论java的新闻组介绍一下,说出一个给50,不够加
  • 急急急!请说出哪里有关于Unix的较新的英文文档?多谢!
  • 谁能说出Linux的不同厂商
  • NOSQL iis7站长之家
  • 请说出您的看法:jsp+bean+html的封装


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3