首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

【】关于自定义方法使用静态模式的疑问

2012-01-01 
【求助】关于自定义方法使用静态模式的疑问?我将我经常用到的一些方法(函数)写成.cs文件,给其他程序调用,为

【求助】关于自定义方法使用静态模式的疑问?
我将我经常用到的一些方法(函数)写成.cs文件,给其他程序调用,为了使用时候方便(省去实例化的过程),将方法定义成静态方法,如下,不知道对程序和服务器的性能有无影响,请大家帮忙。如果有影响我还是老实一点写上实例化的语句,毕竟只有短短几句。谢谢!

                public   static   string   StringRightSplit(string   strings,   string   Separ)
                {
                        int   s_count   =   CountStr(strings,Separ);
                        if   (s_count   >   0)
                        {
                                return   splitstr(strings,   Separ)[s_count];
                        }
                        else
                        {
                                return   strings;
                        }
                       
                       
                }

[解决办法]
这类情况(非业务逻辑)确实应该使用静态方法

不但对性能没什么大影响,而且我认为性能可能比非静态方法更高,特别是频繁使用时,它在程序加载时即已经加载入内存,无须在实例化时重复分配内存
[解决办法]
本来就该用静态方法,这样的类称为“静态例程类”,非静态的优势在于继承,在于可以使用实例字段,在这里其实没什么继承不继承的,也一般没什么实例字段用,所以用静态是对的,而且性能会更好,在一些情况下差别可以达到5-10倍(亲自测试过)。

热点排行