Kullanarak Özel Statik Yöntemler avantajları
Herhangi bir örnek alanların kullanımı gerektirmeyen genellikle kod tekrarını azaltmak için iç özel yöntemleri olan bir sınıf oluştururken, statik olarak yöntemi bildirmek için performans veya bellek avantajı var mı?
Örnek:
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;
}
Orada GetİnnerXml bildirmek için herhangi bir avantaj() yöntemleri gibi statik? Hiçbir görüş yanıtları lütfen, bir fikrim var.
CEVAP
Bu konuda: FxCop rule page
Yöntemleri gibi statik işaretledikten sonra, derleyici bu üyeler için sanal olmayan ekipler çıkarır. Sanal olmayan arama siteleri yayan geçerli nesne işaretçisi null sağlayan da her çağrı için çalışma zamanında bir kontrol önleyecektir. Bu performans-hassas kod için ölçülebilir bir performans artışı neden olabilir. Bazı durumlarda, geçerli bir nesne kopyasını erişmek için başarısızlık doğruluğu bir sorunu temsil eder.
Değişim statik son alan Java kullanara...
Özel yardımcı yöntemler eğer statik ol...
Alay Statik yöntemler kullanarak Rhino...
Python statik yöntemler?...
Nasıl birim özel yöntemler test musun?...