C# 动态方法和静态方法的区别

2021-03-30 23:25

阅读:567

动态方法与静态方法的区别:

1,使用方法上的区别:
动态方法,在使用时需要先创建实例,才能调用实例方法,而静态方法则不需要,直接使用即可。

示例代码如下:
静态方法不需要实例化类就能调用

class ClassA
    {
        public static string MethodB()
        {
            return "Hello World";
        }
    } 

用法:
ClassA.MethodB(); //调用方便  

 

 

动态的方法在使用前,必须先实例化类

class ClassA
    {
        public string MethodB()
        {
            return "Hello World";";
        }
    } 

用法:
ClassA A=new ClassA();
A.MethodB();

 

2,性能上的区别:
静态方法效率要稍微高一些,但是它会常驻内存,占用内存空间,而动态方法在调用完后会自动释放,节省内存空间。

什么情况下使用动态方法,什么情况下使用静态方法:
1,使用静态方法是有好处的,因为静态方法只维护一份拷贝,所以无论你有多少个实例,内存中都只会有一份拷贝。

2,使用频繁的方法用静态方法,比如数据库操作类,我们就是使用静态方法。使用的少的方法用动态的。因为静态的速度快,但占内存,就像是缓存一样,经常用的数据我们应该应该将它们缓存起来。动态方法的调用速度相对慢些,但调用完后,会立即释放类,节省内存。

用户可以根据自己的需要选择是用动态方法还是静态方法。


评论


亲,登录后才可以留言!