静态类概述

时间:2011-09-06 07:22:39

标签: c# .net asp.net oop c#-4.0

我读了一些关于静态类的文章,但我有一些问题:

  1. 哪里把静态类放在内存中?

  2. 根据C# Static Methodsmeans that you want the declaration to refer to a single location如果我在Asp.Net中使用静态类,是否意味着我有一个在所有请求之间共享的位置?

  3. 我在文章中读到静态类和静态方法比面向实例的类更快,所以为什么我没有在每个where中看到它们。我的意思是.Net中有一些静态类和方法也存在。

1 个答案:

答案 0 :(得分:5)

1

  

静态类由.NET Framework common自动加载   语言运行时(CLR)包含的程序或命名空间   加载了类。

所以这意味着静态类被加载到内存中。这意味着您不希望在进程启动时将所有类加载到内存中。

2. asp.net中的静态类保存在应用程序状态中,所以是的,您有一个在所有请求之间共享的位置。 静态方法在asp.net中很有用,但前提是你不在方法中使用静态对象,因为你可能会遇到不同线程访问修改相同变量的麻烦。

3.如果你使用了很多静态类,它们将被加载到内存中,这不是你想要的东西。

有关更多信息,请参阅此链接: static variables in asp.net/C#