1 代码
using UnityEngine;
using System.Collections;
public class UtilityObject{
public int Id{get;set;}
public string Name{get;set;}
public UtilityObject(){}
public UtilityObject(int id, string name){
this.Id = id;
this.Name = name;
}
public UtilityObject(UtilityObject obj){
this.Id = obj.Id;
this.Name = obj.Name;
}
public void say(){
Debug.Log("id : " + Id + " name : " + Name);
}
public UtilityObject clone(){
UtilityObject obj = new UtilityObject();
obj.Id = this.Id;
obj.Name = this.Name;
return obj;
}
}
public class PrototypeDemo : MonoBehaviour {
public static int UTILITY_OBJECT_ID = 1;
public static string UTILITY_OBJECT_NAME = "UtilityObject";
//原型模式
void Start(){
UtilityObject obj00 = new UtilityObject(UTILITY_OBJECT_ID, UTILITY_OBJECT_NAME);
obj00.say();
UtilityObject obj01 = obj00.clone();
obj01.say();
}
}