Yeniden düzenleme yaparken, aşağıdaki örnekteki gibi bir yöntem oluşturdum. Veri türü basitlik uğruna değiştirildi.
Daha önce şöyle bir atama bildirimim vardı:
MyObject myVar = new MyObject();
Bu duruma tesadüfen yeniden düzenlenmiştir:
private static new MyObject CreateSomething()
{
return new MyObject{"Something New"};
}
Bu benim açımdan bir kesme / yapıştırma hatasının bir sonucuydu, ancak in new
anahtar kelimesi private static new
geçerlidir ve derlenir.
Soru : new
Anahtar sözcük, yöntem imzasında neyi ifade eder ? C # 3.0'da tanıtılan bir şey olduğunu varsayıyorum?
Bu nasıl farklıdır override
?
new
Bir yöntemde (veya başka tür bir üye) bir değiştirici olarak kullanımı "C # 3.0'da tanıtılan bir şey" değildir. C # 'ın ilk sürümünden beri oradaydı.