`
huanhuan1022
  • 浏览: 55384 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

关于复写clone

    博客分类:
  • java
阅读更多

1.最好使用super.clone而得到要复制的对象,而不是通过构造函数。

2.如果包含有可变对象域(除了原始类型),那么就不能只是简单的复制了。必须在调用完super.clone方法之后,对于可变对象域进行单独处理。

3.clone架构与引用可变对象的final域的正常用法是不相兼容的,所以可能有必要从某些域中去掉final修饰符

4.如同构造器一样,clone方法不应该再构造过程中,调用新对象中任何非final的方法。

5.如果你决定用线程安全的类实现Cloneable接口,要记得它的clone方法必须得到很好的同步。Object.clone方法没有同步,所以也必须编写同步的clone方法来调用super.clone

6.另一个实现对象拷贝的好方法是提供一个拷贝构造器或者拷贝工厂,比复写clone方法更具有灵活性。

分享到:
评论

相关推荐

    CFG

    cfg-点文件的裸仓库 建立 git init --bare $HOME /.cfg alias cfg= ' git --git-dir=$HOME/.cfg/ --work-tree=$HOME ' ...克隆到另一个系统 git clone --bare ...复写 git clone --separate-git-dir= $HOME /.cf

    dotfiles:我最重要的配置文件的集合

    点文件 我最重要的配置文件的集合 内容 该存储库当前包含以下配置: 新病毒 摇摆 航标 多路复用器 新获取 sh ...alias config= ' /usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME ' ...git clone

    DaanClubChoose:大安高工综合活动选课系统

    1.git clone 2.安装composer 3.在目录下执行composer update 4.在目录下app/storage 要有写入权限5.设定路径复写指定所有请求送至public/index.php 上 apache Options +FollowSymLinks RewriteEngine On RewriteCond...

    ImagePicker:用Kotlin实现的一个仿微信的图片选择库

    非常遗憾,只能clone了代码,自己修复bug。正巧当时正在学习Kotlin,于是便决定用Kotlin复写一下这个库,当做是学习练手。首先感谢一下原作者:更新日志v1.1为了向微信原版靠拢,新增了如下功能网格视图界面增加滑动...

    octofofia2

    描述同样简单,只有一个项目名的复写,这表明我们需要更多上下文来理解其具体含义。 标签“JavaScript”指出了这个项目的核心编程语言。JavaScript是一种广泛使用的脚本语言,主要用于web开发,包括前端交互、后端...

Global site tag (gtag.js) - Google Analytics