Я хочу понять эффективность статических классов, так как думаю, что моё базовое мышление в этой области может быть ошибочным.Я часто пишу код, подобный следующему, предполагая, что дорогостоящий вызов отражения будет происходить реже, поскольку закрытая переменная будет содержать информацию для средства доступа.Я почти уверен, что это хорошая практика в нестатических классах и свойствах экземпляров, но есть ли какая-либо польза от использования этой конструкции в статических классах, или нужно создавать частное поле при каждом вызове общедоступного метода доступа?
using System.Reflection;
public static class ApplicationInformation
{
public static Assembly ExecutingAssembly
{
get { return executingAssembly ?? (executingAssembly = Assembly.GetExecutingAssembly()); }
}
private static Assembly executingAssembly;
}