问个弱弱的基础问题

yeliming 2004-11-26 09:14:15
Bruce Eckel在《Thinking in Java》的附录A里面这样说:
当我们试着在Java里头制作出某个对象的局域性副本时,Copy Constructor并不适用,要使用拷贝,尽量使用Clone。
而且举了个反例,好长啊,代码我就不贴了。

但是JDK中ArrayList提供了Copy Constructor。(既然不适用,为何……)

好像Effective Java第10条又写“谨慎改写Clone函数”,似乎不推荐使用Clone……

混乱啊……是不是我还没有理解他们在说什么?
...全文
142 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
yeliming 2004-11-30
  • 打赏
  • 举报
回复
哦,搞清楚liao,thank各位大大
xtaotao 2004-11-27
  • 打赏
  • 举报
回复
用拷贝构造方法和Clone都好,都经常用,关键是注意需要深拷贝时考虑问题周全一点就行了,呵呵
fast_time 2004-11-26
  • 打赏
  • 举报
回复
不是不推荐使用clone方法,而是提醒你写clone方法时要小心谨慎,不要遗漏
catblue 2004-11-26
  • 打赏
  • 举报
回复
不推荐使用Clone 是因为 一不小心就会浅拷贝。那到时候程序就会出乱,有危险。
mutou123 2004-11-26
  • 打赏
  • 举报
回复
呵 不基础的问题呀,关注中。。
晨星 2004-11-26
  • 打赏
  • 举报
回复
这些都跟引用机制有关吧,ArrayList的拷贝构造并没有对它所包含的元素进行深拷贝。
tim90 2004-11-26
  • 打赏
  • 举报
回复
是提醒你写clone方法时要小心谨慎,不要遗漏
fqyugu 2004-11-26
  • 打赏
  • 举报
回复
tong yi lou shang

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧