1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
// (note, this is taken from `13.2.5 Interface member access')
interface IInteger {
void Add(int i);
}
interface IDouble {
void Add(double d);
}
interface INumber: IInteger, IDouble {}
class Number : INumber {
void IDouble.Add (double d)
{
System.Console.WriteLine ("IDouble.Add (double d)");
}
void IInteger.Add (int d)
{
System.Console.WriteLine ("IInteger.Add (int d)");
}
public static int Main ()
{
INumber n = new Number ();
n.Add(1);
n.Add(1.0);
((IInteger)n).Add(1);
((IDouble)n).Add(1);
return 0;
}
}
|