21、接口

1. 概念

接口可以定义成员的默认实现。接口不得声明实例数据,如字段或类似属性的事件。
接口不能包含常量、字段、运算符、实例构造函数、析构函数或类型。
接口的默认访问修饰符是Public,可以修改

每个类只能继承一个类、但是可以实现多个接口

2. 关键字 :interface

3.标识符命名规则建议:首字母大写,I开头

如比较的接口:IComparable

4.语法

    //定义一个接口
    interface IOne
    {
        public void Test();
    }
    
    //一个类遵守接口
    class Program : IOne
    {
        public void Test()
        {
            Console.WriteLine("实现了接口的Test方法");
        }

        static void Main(string[] args)
        {
            Console.WriteLine("你好");
        }  
    }

5. 接口的继承

    interface IOne
    {
        public void Test();
    }

    interface ITwo : IOne
    {
        public void Test2();
    }

6. 一个类实现多个接口,并且多个接口中的方法有重复,可使用接口名.方法名,分别实现

    interface I2
    {
        void M2();
    }

    interface I1
    {
        void M2();
    }

    class Person : I1,I2
    {
        void I1.M2()
        {
            Console.WriteLine("T1的M2");
        }

        void I2.M2()
        {
            Console.WriteLine("T2的M2");
        }
    }
      static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            Person p = new Person();
            I2 i = p;
            i.M2(); //调用I2.M2方法
        }

你可能感兴趣的:(21、接口)