LazyAllocate(缓分配)与PreAllocate(预分配)

Lazy-Allocate(缓分配)技术:未使用前不预付成本。以时间换空间的概念。
public class class1
{
    private MyData _data;
    public MyData Data
    {
      get{ 
       if (_data == null)
             data = new MyData();
       return _data
      }
    }
}

Pre-Allocate(预分配)技术:无须预判断的快速存取,适用于必然会存取的属性;空间换时间的概念。
public class class1
{
    private MyData _data;
    public class class1()
    {
       _data=new MyData();
    }

    public MyData Data
    {
       get{return _data};
    }
}

原文地址:https://www.cnblogs.com/ZhouXiHong/p/310665.html