【发布时间】:2014-06-27 07:40:33
【问题描述】:
这里有两段类代码,一段用于单例,另一段用于静态类。我喜欢在编程中理解什么时候应该使用静态类,什么时候应该使用单例类?
两者都用于保存全局对象,因此我们可以在程序运行时从程序的任何位置访问这些数据。两者的范围都很广泛....应用程序的生命周期。
1) 我真的找不到任何文章可以指导我何时应该使用静态类以及何时应该使用单例类。我见过人们使用 Singleton 类管理数据库连接。
2) 单例类和静态类的主要区别是什么?
public sealed class Singleton
{
private static Singleton instance = null;
private static readonly object padlock = new object();
Singleton()
{
}
public static Singleton Instance
{
get
{
lock (padlock)
{
if (instance == null)
{
instance = new Singleton();
}
return instance;
}
}
}
}
public static class TestStatic //: ITestSingleton
{
public static void doAction(string args)
{
Console.WriteLine("Test Static :: " + args);
}
}
【问题讨论】:
标签: c# singleton static-classes