如何创建一个可以像静态类一样访问的方法?

时间:2012-01-13 04:26:24

标签: c# xna static-methods

我希望能够在我的游戏中创建一个可以像静态类一样调用的方法,所以我可以移动精灵,例如:

代码

functions.move(Vector2Position)

问题是我不能在静态方法中使用Instance Constructors。有没有办法做到这一点,还是我必须做其他事情?

编辑:

我需要能够在当前课程之外调用它。

1 个答案:

答案 0 :(得分:4)

在MSDN上查看Static ConstructorsStatic Classes。简而言之:

您可以使用“static”关键字声明静态类。这表明无法实例化类。请注意,静态方法也可以存在于普通类中,而不仅仅是标记为“静态”的方法。

static class MyClass
{
    private static int value;
    public static int GetValue() { return value; }
}

如果需要以任何方式初始化类,可以使用静态构造函数:

// Static constructor
static MyClass()
{
    value = 1;
}

然后,您将使用以下代码调用该方法。这可以在任何地方完成 - 在任何其他静态或实例方法中。

int someValueSomewhere = MyClass.GetValue();