// 1,首先要实现Cloneable接口 class Users implements Cloneable{ private int userId; private String userName; private int userAge; Users(int userId, String userName, int userAge) { this.userId = userId; this.userName = userName; this.userAge = userAge; } Users() { } public int getUserId() { return userId; } public void setUserId(int userId) { this.userId = userId; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public int getUserAge() { return userAge; } public void setUserAge(int userAge) { this.userAge = userAge; } //2, 重写clone方法 @Override protected Object clone() { Users o = null; try { o = (Users)super.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); } return o; } @Override public String toString() { return this.userId + " - " +this.userName + " - " + this.userAge; } } public class CloneTest { public static void main(String[] args) { Users a = new Users(1,"张三",30); Users b = (Users) a.clone(); b.setUserName("李四"); System.out.println(b); } }
1,首先要实现Cloneable接口
2, 重写clone方法
output: 1 - 李四 - 30
原文:http://www.cnblogs.com/xiaocaimiao/p/3565923.html