Java中Clone方法

一.  Clone的原理:

   将现有的对象克隆一份,包括给现有对象属性所赋的值,形成一个新的对象,相当于在内存中将现有对象拷贝一份,并重新分配内存空间,拷贝后的对象和现有的对象相当于物理隔离了,操作克隆对象不会影响原来对象。

二.  Clone的前提:

1. 要克隆的类实现Cloneable接口;

2. 在克隆类中重写clone()方法,

    @Override 
    public Object clone() throws CloneNotSupportedException {  
             return super.clone();  
    }

三.  代码实现:

User.java:

public class User implements Cloneable{
 private String name;
 
 private int age;

 public String getName() {
  return name;
 }

 public void setName(String name) {
  this.name = name;
 }

 public int getAge() {
  return age;
 }

 public void setAge(int age) {
  this.age = age;
 }
 
 @Override 
 public Object clone() throws CloneNotSupportedException {  
  return super.clone();  
 }  
}

UserClone.java:

public class UserClone {

 /**
  * @param args
  * @throws CloneNotSupportedException
  */
 public static void main(String[] args) throws CloneNotSupportedException {
  User user = new User();
  
  user.setName("测试1");
  user.setAge(18);
  
  User user2 = (User)user.clone();
  
  user2.setName("测试2");
  user2.setAge(111);
  
  System.out.println(user.getName()+user.getAge());
  
  System.out.println(user2.getName()+user2.getAge());
 }

}

猜你喜欢

转载自blog.csdn.net/yuanboitliuyuan/article/details/7344932
今日推荐