Hello,
it's possible to mark a method declaration in an interface as "new" but does it have any "technical" sense or is it just a way to explicitly state that the declaration cannot override a previous one ?
For example :
interface II1
{
new void F();
}
interface II2 : II1
{
new void F();
}
is valid (the C# 4.0 compiler does not complain) but does not appear to be different from :
interface II1
{
void F();
}
interface II2 : II1
{
void F();
}
Thanks in advance for any information.
EDIT: do you know a scenario where hiding in an interface would be useful ?
EDIT: According to this link : http://stackoverflow.com/questions/2663274/is-method-hiding-ever-a-good-idea (thanks Scott), the most common scenario seems to be the emulation of covariant return type.