设计模式-原型模式

概述

原型模式也是一种创建型的模式,该模式是主要用于创建对象的副本 ,复制原有的对象,而不是创建一个新的对象给新的对象赋值 ,减少了一些复杂度和消耗。主要就是继承一个原型的接口,然后实现一个克隆的方法,在复制对象的时候直接调用这个克隆方法。


原型模式

cs 复制代码
internal class Program
{
    private static void Main(string[] args)
    {
        Students OriStu = new Students("小明", 15);//初始数据
        Students CloneStu = (Students)OriStu.Clone();//克隆数据
        Console.WriteLine("初始: " + OriStu);
        Console.WriteLine("克隆: " + CloneStu);
    }
}
public interface IProto//原型接口
{
    IProto Clone();
}
public class Students : IProto//学生类
{
    public string Name { get; set; }
    public int Age { get; set; }

    public Students(string name, int age)
    {
        Name = name;
        Age = age;
    }

    public IProto Clone()
    {
        return new Students(Name, Age);
    }

    public override string ToString()
    {
        return $"学生: 姓名={Name}, 年龄={Age}";
    }
}

输出结果:

初始: 学生: 姓名=小明, 年龄=15

克隆: 学生: 姓名=小明, 年龄=15

相关推荐
雨中飘荡的记忆14 分钟前
设计模式之组合模式
java·设计模式
Blossom.1181 小时前
基于Mamba-2的实时销量预测系统:如何用选择性状态空间干掉Transformer的O(n²)噩梦
人工智能·python·深度学习·react.js·机器学习·设计模式·transformer
一个处女座的暖男程序猿1 小时前
3大类设计模式
设计模式
双木的木1 小时前
Coggle数据科学 | 并行智能体:洞察复杂系统的 14 种并发设计模式
运维·人工智能·python·设计模式·chatgpt·自动化·音视频
执笔论英雄2 小时前
【RL】Slime异步原理(单例设计模式)3
设计模式
老鼠只爱大米2 小时前
Java设计模式之装饰器模式详解
java·设计模式·装饰器模式·decorator·java设计模式
9***Y482 小时前
Web3预言机设计模式
设计模式·web3
wudl55663 小时前
Agent 设计模式全面分析
设计模式
__万波__3 小时前
二十三种设计模式(四)--原型模式
java·设计模式·原型模式
4***g8943 小时前
Java进阶-SpringCloud设计模式-工厂模式的设计与详解
java·spring cloud·设计模式