Gibt es beim Erstellen einer Klasse mit internen privaten Methoden, normalerweise um die Codeduplizierung zu reduzieren, für die keine Instanzfelder verwendet werden müssen, Leistungs- oder Speichervorteile, wenn die Methode als statisch deklariert wird?
Beispiel:
foreach (XmlElement element in xmlDoc.DocumentElement.SelectNodes("sample"))
{
string first = GetInnerXml(element, ".//first");
string second = GetInnerXml(element, ".//second");
string third = GetInnerXml(element, ".//third");
}
...
private static string GetInnerXml(XmlElement element, string nodeName)
{
return GetInnerXml(element, nodeName, null);
}
private static string GetInnerXml(XmlElement element, string nodeName, string defaultValue)
{
XmlNode node = element.SelectSingleNode(nodeName);
return node == null ? defaultValue : node.InnerXml;
}
Gibt es einen Vorteil, wenn die GetInnerXml () -Methoden als statisch deklariert werden? Bitte keine Meinungsantworten, ich habe eine Meinung.