Podczas refaktoryzacji stworzyłem metodę taką jak na poniższym przykładzie. Typ danych został zmieniony ze względu na prostotę.
Wcześniej miałem takie oświadczenie przydziału:
MyObject myVar = new MyObject();
Zostało to refaktoryzowane przez przypadek:
private static new MyObject CreateSomething()
{
return new MyObject{"Something New"};
}
Było to wynikiem mojego błędu wycinania / wklejania, ale new
słowo kluczowe w private static new
jest prawidłowe i się kompiluje.
Pytanie : Co oznacza new
słowo kluczowe w sygnaturze metody? Zakładam, że to coś, co zostało wprowadzone w C # 3.0?
Czym to się różni override
?
new
jako modyfikatora aa w metodzie (lub innym elemencie członkowskim typu) nie jest „czymś wprowadzonym w języku C # 3.0”. Jest tam od pierwszej wersji C #.