using static System.Console;
public class Test {
public static void Main() {
var sc = new SampleClass();
IControl ctrl = (IControl)sc;
ISurface srfc = (ISurface)sc;
sc.Paint();
ctrl.Paint();
srfc.Paint();
}
}
interface IControl {
void Paint();
}
interface ISurface {
void Paint();
}
class SampleClass : IControl, ISurface {
public void Paint() => WriteLine("Paint method in SampleClass");
void IControl.Paint() => WriteLine("IControl.Paint");
void ISurface.Paint() => WriteLine("ISurface.Paint");
}
//https://pt.stackoverflow.com/q/133957/101
dXNpbmcgc3RhdGljIFN5c3RlbS5Db25zb2xlOwoJCQkJCQpwdWJsaWMgY2xhc3MgVGVzdCB7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpIHsKICAgICAgICB2YXIgc2MgPSBuZXcgU2FtcGxlQ2xhc3MoKTsKICAgICAgICBJQ29udHJvbCBjdHJsID0gKElDb250cm9sKXNjOwogICAgICAgIElTdXJmYWNlIHNyZmMgPSAoSVN1cmZhY2Upc2M7CiAgICAgICAgc2MuUGFpbnQoKTsKICAgICAgICBjdHJsLlBhaW50KCk7CiAgICAgICAgc3JmYy5QYWludCgpOwogICAgfQp9CgppbnRlcmZhY2UgSUNvbnRyb2wgewogICAgdm9pZCBQYWludCgpOwp9CmludGVyZmFjZSBJU3VyZmFjZSAgewogICAgdm9pZCBQYWludCgpOwp9CmNsYXNzIFNhbXBsZUNsYXNzIDogSUNvbnRyb2wsIElTdXJmYWNlIHsKICAgIHB1YmxpYyB2b2lkIFBhaW50KCkgPT4gV3JpdGVMaW5lKCJQYWludCBtZXRob2QgaW4gU2FtcGxlQ2xhc3MiKTsKICAgIHZvaWQgSUNvbnRyb2wuUGFpbnQoKSA9PiBXcml0ZUxpbmUoIklDb250cm9sLlBhaW50Iik7CiAgICB2b2lkIElTdXJmYWNlLlBhaW50KCkgPT4gV3JpdGVMaW5lKCJJU3VyZmFjZS5QYWludCIpOwp9CgovL2h0dHBzOi8vcHQuc3RhY2tvdmVyZmxvdy5jb20vcS8xMzM5NTcvMTAx