意图:
用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。
/** * * @ClassName: ExamReport * @Description: 原型模式 * 实现 克隆的接口 * @author 雨ゆこ * @date 2018年4月26日 * @version yuko1.0 */ public class ExamReport implements Cloneable{ String name; String number; public ExamReport(){ } public void showReport(){ System.out.println(name + "的学号为"+ number + "的实验报告"); } public ExamReport myClone(){ ExamReport ep = null; try{ ep = (ExamReport) this.clone(); }catch(CloneNotSupportedException e){ e.printStackTrace(); } return ep; } }
/** * * @ClassName: Yufan * @Description: 原型模式 测试类 * @author 雨ゆこ * @date 2018年4月26日 * @version yuko1.0 */ public class Yufan { public static void main(String[] args) { ExamReport examReport = new ExamReport(); examReport.name = "张"; examReport.number = "201515"; examReport.showReport(); ExamReport myClone = examReport.myClone(); myClone.name = "李"; myClone.number = "15015"; myClone.showReport(); } }