首先是接口不需要使用public,因为接口是必须公开的,而抽象类里面的方法可以不分开

C#接口入门基础知识复习

还有,接口中不能包含字段,但是可以包含属性

C#接口入门基础知识复习

将其改成属性后编译时出错,因为实现了接口的类也必须去实现这个属性!

C#接口入门基础知识复习

此时在类后面的接口名称上停留片刻就会出现小菜单,点击实现接口后就会在其继承类中自动生成代码,减少输入量

C#接口入门基础知识复习

最后的测试代码如下:

class Program
    {
        static void Main(string[] args)
        {
            I显示 播放器 = new 屏幕();
            播放器.在("视频");
            播放器 = new 数字播放();
            播放器.在(15);

            Console.ReadLine();
        }
    }
    interface I显示
    {
        string str { get; set; }
        void 在(object 哪儿);
    }
    class 屏幕:I显示
    {

        public void 在(object 哪儿)
        {
            Console.WriteLine("在屏幕上显示{0}",(string)哪儿);
        }
        
    }
    class 数字播放:I显示
    {

        public void 在(object 哪儿)
        {
            Console.WriteLine("在数字中出现{0}",(int)哪儿);
        }
        public string str
        {
            get
            {
                throw new NotImplementedException();
            }
            set
            {
                throw new NotImplementedException();
            }
        }
    }
记得老师说过,抽象类和接口差不多,接口更加注意于相同功能的一个提取,比如飞行这个功能,飞机和鸟都能飞行,但显示他们不属于同一个类,没有继承关系,用抽象类去实现不合适,而使用接口就避免了一个继承上的问题,仅仅关注于功能的实现,一句话,有相同的功能就用接口(啰嗦了些..)

相关文章:

  • 2021-07-25
  • 2021-05-21
  • 2022-12-23
  • 2021-12-02
猜你喜欢
  • 2021-11-12
  • 2022-01-27
  • 2021-05-14
  • 2021-06-04
  • 2021-05-30
  • 2022-12-23
相关资源
相似解决方案