/** 对象克隆:完整的复制一个对象
*
* 如果想要完成对象的克隆,则必须依靠Object的clone方法
* protect Object clone() throws CloneNotSupportedException
*
* 一个类的对象如果想被克隆,则必须实现Cloneable接口,然后重写此方法
*
* Cloneable是一个接口,但是在此接口中却没有规定任何的操作方法,所以
* 此接口实际上只是一个标识接口,表示一种能力.
*/
package edu.fjut.clone;
//只有实现Cloneable接口才可以被克隆
class Person implements Cloneable{
private String name;
public Person(String name){
this.name=name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String toString(){
return "姓名:"+this.name;
}
//重写clone方法
public Object clone() throws CloneNotSupportedException{
return super.clone();//具体的克隆操作由父类完成
}
}
public class ObjectClone {
public static void main(String[] args) throws Exception{
Person p1=new Person("雅各布");
Person p2=(Person)p1.clone();//克隆person对象
p2.setName("张三");
System.out.println("原始对象:"+p1);
System.out.println("克隆后的对象:"+p2);
}
/*
* 结果输出:
* 原始对象:姓名:雅各布
* 克隆后的对象:姓名:张三
*/
}
分享到:
相关推荐
java的两种深度克隆方法,1cloneTest是用Cloneable接口的clone方法实现(对象必须要实现cloneable接口).2cloneSerialize.java是用对象流写对象到byte数组中,然后从byte数组中取得对象.(对象必须要实现serializble接口)
Java对象的复制与克隆,包含浅复制和深层复制。 免费下载啦,绝对值得一看。
一个详细讲解JAVA_对象克隆的例子 希望可以帮助到你。
深度复制Java对象实例,复制后对象属性值改变不影响被复制对象,有注释
对象的克隆操作过程,展示了对象中数据字段是如何是实现克隆的
java 深克隆浅克隆···············
示例Bean.java 公共类ExampleBean { 私有 int id; 私人用户用户; 私人名单名单; 公共 int getId() { 返回ID; } 公共无效setId(int id){ 这个.id = id; } 公共用户 getUser() { 返回用户; } ...
Java对象的深克隆与浅克隆详解.zip
可以更好的去理解java克隆的运用,尤其在多线程的运用过程中,多个对象进行操作过程中,可以先进行对 对象进行 备份,首先就克隆一份,当多线程对对象操作过程中,与异常情况,可以对对象进行恢复,克隆还其他的用途,学会...
java深度克隆,可以复制对象,非常好用,谁用谁知道!
Java设计模式设计模式是对常见软件问题的精心描述的解决方案。... 原型模式通过克隆现有对象来创建对象。 单例模式将一个类的对象创建限制为仅一个实例。 结构设计模式这些关系到类和对象组成。 他们使用继
如何进行Java对象的克隆.pdf
031111_【第11章:Java常用类库】_对象克隆技术笔记
主要介绍了Java编程实现对象克隆(复制)代码详解,涉及了克隆的原因,如何实现克隆,克隆的一般步骤,深克隆与浅克隆的介绍等相关内容,具有一定借鉴价值,需要的朋友可以参考下。
(二) 确保对象的唯一性——单例模式 (三) 确保对象的唯一性——单例模式 (四) 确保对象的唯一性——单例模式 (五) 原型模式-Prototype Pattern 对象的克隆——原型模式(一) 对象的克隆——原型模式(二) ...
java线程池源码解读Java 新手到精通(行业兼容)课程大纲 标题 分解 时间 1 介绍 为什么选择 Java Java 设计目标和历史 Java ...Java语言的特点 ...克隆对象/浅层和深层克隆 5 异常处理 异常背后的想法
遵循模型视图控制器(MVC)架构的Java-Swing Framework中著名的Windows游戏Minesweeper的面向对象的克隆。 它是一个独立的桌面游戏,还提供保存和加载游戏功能。 主要设计重点是MVC架构和解耦的实体。 为了使游戏...
现在Clone已经不是一个新鲜词语了,伴随着“多莉”的产生这个词语确实很“火”过一阵子,在java中也有这么一个概念,它可以让我们很方便的“制造”出一个对象的副本来,下面来具体看看java中的Clone机制是如何工作的...
本篇文章是对JAVA对象深度克隆进行了详细的分析介绍,需要的朋友参考下