0
A
回答
3
啊,难以捉摸的单例模式。
如果你有一点点空闲时间,我会强烈建议乔恩斯基特的文章的主题:http://csharpindepth.com/Articles/General/Singleton.aspx
下面是一个简单的例子:
public sealed class YourSingleton
{
private static readonly YourSingleton instance = new YourSingleton();
static YourSingleton() {}
private YourSingleton() { }
public static YourSingleton Instance
{
get { return instance ; }
}
}
0
如果你只需要一个实例,使用Singleton模式:
public class Class1
{
private Class1()
{
...
}
private static readonly Class1 _instance = new Class1();
public static Class1 Instance { get { return _instance; } }
}
和访问这样的实例:
Class1.Instance
否则,只公开为一个类中的静态属性。
0
如果您随时随地的意思是你的解决方案 - 您可以使用一个静态类,静态属性
public static class Shared
{
private static Class1 _myclass;
public static Class1 MyClass{
get
{
return _myclass??(_myclass=new Class1());
}
}
}
0
可以Singleton模式如下:
public class MyClass
{
private static MyClass myClass;
public static MyClass MyClassInstance
{
get { return myClass ?? (myClass = new MyClass()); }
}
private MyClass()
{
//private constructor makes it where this class can only be created by itself
}
}
实例然后可全局访问像
MyClass.MyClassInstance
0
您可以创建一个静态类,其中包含可从应用程序中的每个类访问的共享实例。
public static class SharedResources
{
public static Class1 obj1 {get; set;}
public static Class2 obj2 {get; set;}
// ...
}
相关问题
- 1. 如何在PHP扩展中实例化一个全局C++类?
- 2. 如何实现一个全局变量?
- 3. 如何实现全局字符串C#
- 4. 如何在Objective-C中创建类的全局实例C
- 5. 在全局级别实例化(C++)
- 6. 实例化一个全局对象
- 7. 如何在C#中实例化一个属性的新实例
- 8. 如何在C#中实现全局热键?
- 9. 如何:多个Django实例共享一个全局变量?
- 10. 在C++中创建多个全局静态实例?
- 11. MDI单实例C#..如何实现?
- 12. 如何在C#中实现一个单例?
- 13. Objective-C新手问题:全局实例
- 14. 在C#中实现一个.NET接口实例化IronPython类型
- 15. 如何访问全局类实例?
- 16. 如何在rails中使用全局实例?
- 17. 如何在MySQL中实现'全局唯一ID'?
- 18. 一个类的实例的C#全局变量
- 19. 如何定义一个php类的全局实例?
- 20. 如何在Python中实现Haskell实例?
- 21. 如何在整个应用程序中实现全局int/counter?
- 22. 在AngularJS中实例化全局服务
- 23. 实现在C++中使用全局指针
- 24. 意外的全局变量值;在C++中使用skewheap实现
- 25. 如何实现全局静态类
- 26. 如何实现全局信号量类
- 27. 在实体框架中实现“每个对象一个实例”
- 28. 应该在Code Igniter中实例化一个全局对象吗?
- 29. PHP - singletone全局实例
- 30. 对象的全局实例
要么让类为'static'或遵循单例模式。 –
使用[Singleton pattern](http://en.wikipedia.org/wiki/Singleton_pattern)是可能的,但它被忽视,因为它通常(并不总是)设计不好。 – Rik