接口继承 测试
基类
class Base :InfBase { public virtual void GetName() { Console.WriteLine("dog"); } }
接口基类
interface InfBase { void GetName(); }
接口继承
interface Inf2 :InfBase { void GetName(string s); void GetName(); }
类继承
class Class2 :Base ,Inf2 { public void GetName(string s) { //base.GetName(); Console.WriteLine(s); } public new void GetName() { Console.WriteLine("horser"); } }
注意方法2:使用NEW(override ) ,说明这里新建方法,覆盖了基类方法。如果不使用,提示如图
main主程序
class Program { static void Main(string[] args) { Class2 c2 = new Class2(); c2.GetName(); ((Inf2) c2).GetName("duck"); // (Inf2) c2.GetName(); Console.ReadLine(); } }
结果: