环球速看:设计模式-原型模式(一)
腾讯云
2023-05-04 11:45:43
【资料图】
原型模式是一种创建型设计模式,它可以通过克隆已有的对象来创建新的对象,避免了重复创建相似对象的开销。原型模式是一种基于对象复制的创建方式,它能够在运行时动态地生成新对象,并根据需要进行修改。
在原型模式中,我们需要定义一个原型接口或抽象类,这个接口或抽象类需要定义用于复制自身的方法。然后我们可以通过实现这个接口或抽象类来创建具体的原型对象,并通过克隆已有的对象来生成新对象。
下面我们通过一个例子来详细介绍原型模式的使用方法和实现细节。
假设我们有一个学生类,其中包含学生的姓名和年龄信息,我们希望能够根据已有的学生对象创建新的学生对象,并根据需要修改新对象的属性。我们可以使用原型模式来实现这个需求。
首先,我们需要定义一个原型接口,该接口中需要包含用于复制自身的方法:
public interface Prototype { Prototype clone();}
然后,我们需要定义一个具体的学生类,实现原型接口并重写复制方法:
public class Student implements Prototype { private String name; private int age; public Student(String name, int age) { this.name = name; this.age = 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 Prototype clone() { return new Student(name, age); }}
在这个学生类中,我们定义了学生的姓名和年龄属性,并实现了原型接口中的 clone() 方法,该方法返回一个新的学生对象并复制原有对象的属性。