克隆对象
- 实现一个接口 Cloneable
- 重写一个方法 clone()
应用
Spring Bean 单例模式,原型模式
原型模式+工厂模式 ==> 工厂模式创建对象可以用克隆模式
示例
public class Video implements Cloneable {
private String name;
private Date createTime;
@Override
protected Object clone() throws CloneNotSupportedException {
// return super.clone();//浅拷贝
Object clone = super.clone();
Video v = (Video) clone;
v.setCreateTime((Date) this.createTime.clone());
return v;//深度克隆
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
}