设计模式之原型模式

原型模式(Prototype Pattern)是一种创建型设计模式,它通过复制一个现有对象来创建新的对象,而无需知道对象创建的具体细节。

 

原型模式包含以下主要角色:

 

1. 抽象原型类(Prototype):声明一个克隆自身的接口。

2. 具体原型类(ConcretePrototype):实现克隆自身的操作。

 

原型模式的优点包括:

 

1. 性能优化:对于创建复杂对象或创建过程耗时的对象,通过复制原型对象可以提高创建新对象的效率。

2. 避免子类化的复杂性:有时创建对象的过程比较复杂,使用原型模式可以避免通过子类化来创建对象的复杂过程。

3. 便于动态配置对象:可以在运行时动态地获取和配置原型对象。

 

以下是一个简单的 Java 原型模式示例:

 

interface Prototype {

    Prototype clone();

}

 

class ConcretePrototype implements Prototype {

    private int value;

 

    ConcretePrototype(int value) {

        this.value = value;

    }

 

    @Override

    public Prototype clone() {

        return new ConcretePrototype(value);

    }

 

    public void showValue() {

        System.out.println("Value: " + value);

    }

}

 

public class PrototypePatternExample {

    public static void main(String[] args) {

        ConcretePrototype prototype = new ConcretePrototype(10);

 

        ConcretePrototype clone = (ConcretePrototype) prototype.clone();

 

        prototype.showValue();

        clone.showValue();

    }

}

在上述示例中, ConcretePrototype  类实现了克隆自身的方法,通过调用  clone  方法创建新的对象。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值