本文共 1099 字,大约阅读时间需要 3 分钟。
-- Start
重写 copy 方法有几点需要注意.
下面是一个简单的例子.
class Person implements Cloneable { private String name; private Date birthday; public Person() { } @Override public Person clone() throws CloneNotSupportedException { Person p = (Person) super.clone(); // 使用默认的 clone 方法进行浅拷贝 p.birthday = (birthday == null ? null : (Date) birthday.clone()); // 对可变对象进行深拷贝 return p; } public String getName() { return name; } public void setName(String name) throws Exception { this.name = name; } public Date getBirthday() { return (Date) birthday.clone(); // 保护性拷贝 } public void setBirthday(Date birthday) { this.birthday = birthday; }}
--更多参见:
-- 声 明:转载请注明出处 -- Last Updated on 2012-06-12 -- Written by ShangBo on 2012-05-25 -- End