Skip to content

原型(Prototype)模式 创建型模式

将一个对象作为原型,通过对其进行复制而克隆出多个和原型类似的新实例。

c#
// 原型模式示例
using System;

// 声明一个抽象类,作为原型类
abstract class Prototype
{
    public abstract Prototype Clone();
}

// 声明一个具体类,继承自原型类
class ConcretePrototype : Prototype
{
    private string _name;

    // 构造函数
    public ConcretePrototype(string name)
    {
        this._name = name;
    }

    // 实现Clone方法,返回一个新的ConcretePrototype对象
    public override Prototype Clone()
    {
        return new ConcretePrototype(this._name);
    }

    // 打印对象的名称
    public void PrintName()
    {
        Console.WriteLine("Name: " + this._name);
    }
}

class Program
{
    static void Main(string[] args)
    {
        // 创建一个ConcretePrototype对象
        ConcretePrototype prototype = new ConcretePrototype("Prototype 1");

        // 克隆一个新的ConcretePrototype对象
        ConcretePrototype clone = (ConcretePrototype)prototype.Clone();

        // 打印原型对象和克隆对象的名称
        prototype.PrintName();
        clone.PrintName();

        Console.ReadKey();
    }
}
你觉得这篇文章怎么样?
  • 0
  • 0
  • 0
  • 0
  • 0
  • 0
评论
  • 按正序
  • 按倒序
  • 按热度