类的诸实例共享集合数据的实现

如果类实例需要共享一片内存(如集合) 该怎么实现呢?

答案是使用Static成员和Static构造函数,Static成员就不用说了,它是属于类的东西,各实例都能共享到的东西,如果这个成员是一个集合的话就需要Static构造函数来初始化它,Static构造函数在CLR载入类时就会被调用.

如下:

public class Sample
    {
        private static Hashtable ganzhiHt;
       ...

        static Sample()
        {
            //---干支部分-------------------
            ganzhiHt = new Hashtable();
            ganzhiHt.Add("壬申", 7);
            ganzhiHt.Add("甲申", 5);
            ganzhiHt.Add("丙申", 5);
            ganzhiHt.Add("戊申", 14);
            ganzhiHt.Add("庚申", 8);

            .....

           }

}

 

这样,创建Sample的实例时就不会创建多个ganzhiHt了,节省了空间,尤其是加快了速度.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值