Мне было интересно, каковы общие преимущества (или недостатки) использования нестатического класса со статическим методом по сравнению с статическим классом с тем же статическим методом, за исключением того, что я не могу использовать статические методы из нестатического класса, статический класс как методы расширения.
Например:
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());