我想知道,创建一个类的实例然后访问它内部的方法是否安全。有人说依赖注射的事情从来没有进一步说过。例如:
private static WordfilterController instance;
public static WordfilterController GetInstance()
{
if (instance == null)
instance = new WordfilterController();
return instance;
}
这允许我访问这样的方法:
WordfilterController.GetInstance().CheckString("hi");
我的问题是,这是最优的,是否安全?
答案 0 :(得分:1)
假设它包含在WordfilterController
类中,您的示例说明的是 Singleton 设计模式的简单版本,您可以在Jon Skeet's帖子中阅读更多内容。
如果它有一个公共构造函数,那就不会了。
您的代码块与依赖注入无关,它也不是线程安全的,但在大多数情况下它应该可以完成。