Низкоуровневая разница: нестатический класс со статическим методом против статического класса со статическим методом

Мне было интересно, каковы общие преимущества (или недостатки) использования нестатического класса со статическим методом по сравнению со статическим классом с тем же статическим методом, , кроме того факта, что я не могу использовать статические методы из нестатического класса в качестве методов расширения.

Например:

class NonStaticClass
{
    public static string GetData()
    {
        return "This was invoked from a non-static class.";
    }
}

По сравнению с этим:

static class StaticClass
{
    public static string GetData()
    {
        return "This was invoked from a static class.";
    }
}

Каковы последствия использования одного метода над другим для производительности/памяти?

ПРИМЕЧАНИЕ:Предположим, что мне не нужно создавать экземпляр класса. Мой сценарий использования ограничен чем-то вроде этого:

Console.WriteLine(NonStaticClass.GetData());
Console.WriteLine(StaticClass.GetData());
13
задан Den Delimarsky 5 April 2012 в 18:16
поделиться