C#中接口通过基类或派生类对方法的调用

来源:互联网 发布:飞鱼网络电视手机版 编辑:程序博客网 时间:2024/04/28 10:15
/* * 这个程序说明: * 如果基类继承了接口,而派生类用new方式覆盖了基类中方法 * 那么,接口对方法的调用总是调用基类中的方法 * 而不管接口是通过基类还是派生类进行的 */using System;namespace Test.Shengyi{    internal interface IBase    {        void PrintName();    }    internal class Base : IBase    {        public void PrintName()        {            Console.WriteLine("Class name : Base");        }    }    internal class Derieved : Base    {        new public void PrintName()        {            Console.WriteLine("Class name : Derieved");        }    }    class MainProgram    {        static void Main()        {            Base b = new Base();            IBase ib;            ib = b;            ib.PrintName();            Derieved d = new Derieved();            ib = d;            ib.PrintName();        }    }}


输出结果:

 Class name : Base

Class name : Base

原创粉丝点击