创建类的实例

时间:2017-06-18 00:52:56

标签: c# dependency-injection instance

我想知道,创建一个类的实例然后访问它内部的方法是否安全。有人说依赖注射的事情从来没有进一步说过。例如:

private static WordfilterController instance;

public static WordfilterController GetInstance()
{
    if (instance == null)
        instance = new WordfilterController();
    return instance;
}

这允许我访问这样的方法:

WordfilterController.GetInstance().CheckString("hi");

我的问题是,这是最优的,是否安全?

1 个答案:

答案 0 :(得分:1)

假设它包含在WordfilterController类中,您的示例说明的是 Singleton 设计模式的简单版本,您可以在Jon Skeet's帖子中阅读更多内容。

如果它有一个公共构造函数,那就不会了。

您的代码块与依赖注入无关,它也不是线程安全的,但在大多数情况下它应该可以完成。