Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
当我在一个类中声明一个静态变量然后多次实例化该类时会发生什么?
静态变量会在所有实例之间共享吗?还是会为每个类实例创建多个静态变量?
C# 中的static字段在一个类型的所有实例之间共享。无论您实例化该类型多少次,每个静态字段都只有一个实例AppDomain(通常AppDomain每个进程一个)。
static
AppDomain
一个例外是泛型类型。当您在泛型类型中有一个静态字段时,每个泛型实例化都会有一个静态字段实例。
class Container<T> { internal static T Field; }
现在Container<int>和Container<string>将会有不同的实例Field
Container<int>
Container<string>
Field