注册
 找回密码
 注册
江西广告网
查看: 373|回复: 0
打印 上一主题 下一主题

谈谈Java中的克隆的应用

[复制链接]

该用户从未签到

1
跳转到指定楼层
发表于 2009-2-17 10:58:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
  经常听到有人说java中没有指针。事实如此吗?no,java是有指针的,只不过换了个名字而已,也就是我们经常提到的引用。我们知道,在java中一切都是对象,那么我们如何操控对象?如何在成千上万的对象中找到我们所需的那个对象呢?又是如何让对象按照我们的意思来完成任务的呢?   Object o = new Object();   这是java中最常见的语句了,在这句话中做了三件事。首先声明一个Object类型的变量o,在内存中为对象划分一块地址new Object(),将声明的变量指向内存中的对象。如此一来,我们就可以通过o来操纵对象了。就好像孩子们玩的遥控飞机,在空中飞行的是飞机,而使它做出优美动作的却是孩子们手中的摇控器。   \"克隆\"是如今听到的较多的词汇,听说已经将某只羊克隆了好几份了。但愿这种技术不要在人身上实验。java中也有\"克隆\",与现实世界的克隆一样,将一个实际存在的对象拷贝几份。如下: //倒霉的羊 public class Sheep implements Cloneable{ private String name; public void setName(String arg) { name = arg; } public String getName() { return name; } public Object clone() throws CloneNotSupportedException { return super.clone(); } } //克隆 public class Main { public static void main(String[] args) throws CloneNotSupportedException { Sheep sheep = new Sheep(); //先得到那只羊的实例 sheep.setName(\"我是真的\"); //给它做个记号 System.out.println(\"sheep.getName() = \" sheep.getName()); Sheep sheepClone = (Sheep)sheep.clone(); //开始克隆 System.out.println(\"sheepClone.getName() = \" sheepClone.getName()); } }   运行程序结果为:   sheep.getName() = 我是真的   sheepClone.getName() = 我是真的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表