在日常的工作中难免会遇到到对象克隆的需求,那么接下来简单的记录一下在JAVA
中对象克隆的实现。
需要注意的是
在一个java
对象中 如果包含了另一个java
对象,那么就需要深度克隆。含义大概就是只要是引用数据类型的对象,那么都需要做深度克隆
一 、首先定义一个java
对象 User
并实现 java.lang.Cloneable
接口,这个接口虽然没有实现任何方法 但是必须实现它,否则会抛出java.lang.CloneNotSupportedException
异常
public class User implements Cloneable{ |
二 、 定义一个测试类UserTest
public class UserTest { |
三 、运行UserTest
类 结果如下
false |
这样的克隆我们叫他为浅克隆,那么还有上面所说的深度克隆。实现原理是一样的。
前面使用一些对象的克隆比较麻烦。那么apache提供了一个方便的类org.apache.commons.beanutils
使用方法是:
User user=new User(); |
发现结果也是一样的。SO EASY