当前位置: 技术问答>java相关
java中等号“=”的意义是什么?
来源: 互联网 发布时间:2015-11-18
本文导语: 如果Demo是一个类名: Demo a1, a2; a1 = ...... a2 = a1;的意义是什么? 是a2是a1的一个引用,改变a2也会改变a1 还是a2是a1的一个克隆,改变a2不会改变a1? c++中和java一样吗? | a1,a2是同一个引用,任何一个...
如果Demo是一个类名:
Demo a1, a2;
a1 = ......
a2 = a1;的意义是什么?
是a2是a1的一个引用,改变a2也会改变a1
还是a2是a1的一个克隆,改变a2不会改变a1?
c++中和java一样吗?
Demo a1, a2;
a1 = ......
a2 = a1;的意义是什么?
是a2是a1的一个引用,改变a2也会改变a1
还是a2是a1的一个克隆,改变a2不会改变a1?
c++中和java一样吗?
|
a1,a2是同一个引用,任何一个的修改都会在另一个上表现出来,
克隆用:a2 = a1.clone()方法,既将a1 复制一份给a2而互不影响
克隆用:a2 = a1.clone()方法,既将a1 复制一份给a2而互不影响
|
a2 = a1 表示a2指向的内存地址与a1相同,即a1,a2指向同一个对象
a2是a1的一个引用,改变a2也会改变a1
a2是a1的一个引用,改变a2也会改变a1
|
关于clone()有许多话题要说,建议你看thinking in java 2nd中相关部分
|
使之指向同一个对象!
|
对于java的基础类而言是赋值
对于普通类而言可能是初始化,或者是传递一个句柄
对于普通类而言可能是初始化,或者是传递一个句柄
|
Java中有两种数据类型:基本类型(boolean,char,float,byte,int,double,short,long)和引用类型
对于基本数据类型是赋值,对于引用数据类型就是传引用(隐式指针)
对于基本数据类型是赋值,对于引用数据类型就是传引用(隐式指针)
|
同意楼上两位的!!!
|
=是付值 可能是传值或是传引用
要看是不是基础类型
==是判断相等
也可能是判断值或者地址
要看是不是基础类型
==是判断相等
也可能是判断值或者地址
|
c++中是符号重载改动不是同时的
java不同
java不同
|
在此表示a2是a1的引用,相当于C语言中把a1的指针传给a2