请问java中的对象克隆一般用在什么时候???? 请问java中的对象克隆一般用在什么时候????虽然也可以用输入输出流来实现但这克隆一般用在什么情况下???还有关于深度克隆的问题???哪位大哥讲解一下!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我见到的一种情况是,方法需要返回引用,但是又不希望用户对该引用指向的对象进行修改。这时候直接返回clone()的结果。 比如这个:class Test { private static int[] value; static { value = new int[]{1, 2, 3, 4, 5}; } public static final int[] getValue() { return value.clone(); }}我直接返回Test中的数组的话,外面有可能对这个数组造成破坏,所以返回clone的。 我刚学,对clone不是很了解。 clone一般用于一些对象在创建时很复杂,或者你不知道它是怎么创建出来,就用它的clone方法。这个让我想起Prototype模式(即原型模型),它的定义好像是这样:一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节,工作原理是:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建。打个比方:你去到一家面包店,看中了一个蛋糕,但你不知道它的名字是什么,你会用手指指着那蛋糕对销售员说:"我要这种蛋糕!"这个就是我们日常生活中的原型模型了,你指着那块蛋糕,然后销售员就克隆一块一模一样的蛋糕给你啦。 程序一:请各位高手看看,为什么出错 请问下 为什么 jxl 怎么能只能插入一行数据 100分求一个将指定的JTree内容保存到一个本地文件.dat的方法 散分,急!正则表达式求解! java swing 如何可以加密jsp的源代码,让别人看不懂~教教我吧!~谢谢了 JAVA里面有没有什么办法可以判断一个CLASS是否已经定义在CLASSPATH里面? 我的Java程序运行一段时间后报出“cannot create new thread”的错误 接口是什么啊 还是在oracle数据库中存取图片的问题? 字符串中数字问题 JAVA连接另一台局域网的ORACLE数据库
private static int[] value;
static {
value = new int[]{1, 2, 3, 4, 5};
}
public static final int[] getValue() {
return value.clone();
}
}我直接返回Test中的数组的话,外面有可能对这个数组造成破坏,所以返回clone的。
这个让我想起Prototype模式(即原型模型),它的定义好像是这样:
一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节,工作原理是:
通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建。打个比方:你去到一家面包店,看中了一个蛋糕,但你不知道它的名字是什么,你会用手指指着那蛋糕对销售员说:"我要这种蛋糕!"这个就是我们日常生活中的原型模型了,你指着那块蛋糕,然后销售员就克隆一块一模一样的蛋糕给你啦。