.NET学习之显式实现接口

 

class Program
    {
        static void Main(string[] args)
        {
            //显示实现接口就是为了解决方法的重名问题
            IFlyable fly = new Bird();
            fly.Fly(); //接口方法
            Bird bird = new Bird();
            bird.Fly();//类的方法

            Console.ReadKey();
        }
    }
    public class Bird : IFlyable
    {
        public void Fly()
        {
            Console.WriteLine("鸟飞会");
        }
        /// <summary>
        /// 显式实现接口
        /// </summary>
         void IFlyable.Fly()    //默认为private,实现了
        {
            Console.WriteLine("我是接口的飞");
        }

    }

    public interface IFlyable
    {
        void Fly();  //本质在访问这个Fly,(public)
    }


总结
1、显示实现接口就是为了解决方法的重名问题
2、类中的方法默认为private,接口中默认为public

你可能感兴趣的:(.NET学习之显式实现接口)