Я получаю следующее предупреждение компилятора:
'Resources.Foo.GetType()' hides inherited member 'object.GetType()'. Use the new keyword if hiding was intended. Resources.NET\Resources\Class1.cs 123 20 Resources
для этого (очень упрощенного) кода:
public interface IFoo
{
int GetType();
string GetDisplayName();
}
public class Foo : IFoo
{
public int GetType() { return 3; } *** Warning: points to here (line 123)***
public string GetDisplayName() { return "Foo"; }
}
Обратите внимание, что я не понимаю, почему функция GetDisplayName () НЕ получает предупреждение. Я явно чего-то не замечаю.
Я обошел Stack Overflow и погуглил эту ошибку, и кажется, что она применима к наследованию классов, а не к интерфейсам. Я действительно запутался, почему это сработало бы для интерфейса (который определяет его методы как виртуальные).
Заранее благодарим за понимание.