【设计模式】5.原型模式

说明:经常需要创建重复的对象,可以使用原型克隆出来。

实现:

 public class test
    {
        public void start() {
            //第一个,怎样也要new
            car_base carObj = new car(1);

            //之后都可以用clone
            car_base carObj2 = (car)carObj.clone();
        }
    }

    public abstract class car_base
    {
        public int id { get; set; }
        public car_base(int _id)
        {
            this.id = _id;
        }
        public abstract car_base clone();
    }

    public class car : car_base
    {
        public car(int _id):base(_id)
        {

        }

        public override car_base clone()
        {
            return (car_base)this.MemberwiseClone();//浅拷贝
        }
    }

 

20220830补充:

当作是单例的复制版,不是只有一个对象了,是把对象复制出来了。

posted on 2020-08-20 11:35  一个小目标一次坑记录  阅读(118)  评论(0)    收藏  举报