社区
C#
帖子详情
浅拷贝和对象引用的关系
jefflovejava
2008-12-12 09:49:28
谁知道浅拷贝和传递一个对象引用有什么不同?
...全文
144
9
打赏
收藏
浅拷贝和对象引用的关系
谁知道浅拷贝和传递一个对象引用有什么不同?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
quincystar
2008-12-12
打赏
举报
回复
学习了
愚痴鱼
2008-12-12
打赏
举报
回复
[Quote=引用 4 楼 jefflovejava 的回复:]
也就是说
SomeObject obj1 = new SomeObject(...);
SomeObject obj2;
obj2 = obj1.MemberwiseClone();
obj2 = obj1();
上面两个方式在编译处理的时候是一样的么??
[/Quote]
首先,你这个语法是不通过的,obj2 = obj1.MemberwiseClone(); 这句会出错;
MemberwiseClone是受保护方法,不能这样直接用;
浅拷贝就是拷贝了引用;
当你定义的类型里全是值类型时,这样做就是很方便的复制;如果你定义的类型里有引用类型,但是你后面的处理会忽视掉
这些引用类型不对它们进行处理,你也可以用浅拷贝,否则就要小心使用,避免一改全改;
jummy_lin
2008-12-12
打赏
举报
回复
浅拷贝本来就没有什么意义,并且危害很大。如果程序中因为浅拷贝造成逻辑错误,这种错误是很难跟踪的。所以使用引用类型的时候一定要慎重。
jefflovejava
2008-12-12
打赏
举报
回复
如果一样的话,浅拷贝的意义在于什么,比如有什么特殊的应用么?
jefflovejava
2008-12-12
打赏
举报
回复
笔误
obj2 = obj1;
jefflovejava
2008-12-12
打赏
举报
回复
也就是说
SomeObject obj1 = new SomeObject(...);
SomeObject obj2;
obj2 = obj1.MemberwiseClone();
obj2 = obj1();
上面两个方式在编译处理的时候是一样的么??
Fibona
2008-12-12
打赏
举报
回复
传递引用指针跟浅拷贝一样,如果你在方法中改变了对值的值,原来对像的值也会发生变化
cheng_er
2008-12-12
打赏
举报
回复
楼上说的是深浅拷贝的区别吧
wuyq11
2008-12-12
打赏
举报
回复
一值类型变量,一种引用类型变量。对于前者,copy是属于全盘复制;而对于后者,一般的copy只是浅copy,相当于只传递一个引用指针一样。
浅拷贝:只复制对象的基本类型,对象类型,仍属于原来的引用.
深拷贝:不紧复制对象的基本类,同时也复制原对象中的对象.就是说完全是新对象产生的.
浅拷贝和深拷贝区别:浅拷贝是指将对象中的数值类型的字段拷贝到新的对象中,而对象中的引用型字段则指复制它的一个引用到目标对象。如果改变目标对象中引用型字段的值他将反映在原是对象中,也就是说原始对象中对应的字段也会发生变化。
对象
的
浅拷贝
和深拷贝
浅拷贝
:是指拷贝
对象
时仅仅拷贝
对象
本身(包括
对象
中的基本变量),而不拷贝
对象
包含的
引用
指向的
对象
。 深拷贝:不仅拷贝
对象
本身,而且拷贝
对象
包含的
引用
指向的所有
对象
。 二、区别:
浅拷贝
:仅仅是指针给了另一...
深拷贝,
浅拷贝
与
引用
拷贝
浅拷贝
:
浅拷贝
是创建一个新的
对象
,这个
对象
有着原始
对象
的一份精确拷贝,如果属性是基本类型,拷贝的就是基本类型的值,如果属性是
引用
拷贝,则拷贝的就是内存地址即
引用
。深拷贝确保了复制后的
对象
与原始
对象
完全...
java
引用
拷贝,
对象
浅拷贝
,
对象
深拷贝
引用
拷贝:和
对象
拷贝的不同之处在于,
引用
拷贝只会生成一个新的
对象
引用
地址,但两个地址其最终指向的还是同一个
对象
;
对象
拷贝:这种方式会重新生成一个新的
对象
,生成的新
对象
与原来的
对象
没有任何关联。 1、...
C#中的深拷贝和
浅拷贝
深拷贝:一个
对象
深拷贝的时候,无论是
引用
类型
对象
还是值...仅仅复制
对象
引用
总结来说深拷贝和
浅拷贝
对于
引用
类型的处理不同,
引用
类型在
浅拷贝
时,拷贝的是
对象
的
引用
,
引用
类型在深拷贝时,拷贝的是完整的一份
对象
。
Java
浅拷贝
,深拷贝和
引用
拷贝区别
在 Java 中,拷贝(复制
对象
)有三种方式:
浅拷贝
、深拷贝和
引用
拷贝。它们之间的区别主要在于拷贝的程度和拷贝后
对象
之间的
关系
。
C#
111,097
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章