c#学习笔记Day5

第五章 接口

1.接口

        接口在语法上的声明与抽象类完全相同,但不允许提供接口中任何成员的实现方式。一般情况下,接口只能包含方法、属性、索引器和事件的声明。

         不能实例化接口,他只包含其他成员的签名。口中既不能有构造函数也不能有字段。接口的定义也不允许包含运算符重载(因为接口通常是公共协定,包含运算符重载会引起一些与其他.NET语言的不兼容问题)。

         在接口中还不允许声明关于成员的修饰符。接口成员总是公有的,不能声明为虚拟的或静态的。如果需要,应该在实现的类来声明。

2.定义和接口实现

public interface IChinese

{

    string Speak();

}

public class Speaker : IChinese

{

    public string Speak()

    {

        return "中文";

    }

}

IChinese s = new Speaker();

s.Speak();


Speaker s = new Speaker();

s.Speak();

都可以调用Speak这个方法。

接口引用完全可以看成类引用----但接口引用的强大之处在于,他可以引用任何实现接口的类。

3.派生的接口

接口可以彼此继承,其继承方式与类的继承方式相同。接口B派生自接口A,这表示实现接口B的任何类都要实现接口B和接口A中的方法。

猜你喜欢

转载自blog.csdn.net/weixin_39504659/article/details/84304388