Net Core教程

C#接口的理解

本文主要是介绍C#接口的理解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、接口的定义

在C#语言中,类之间的继承关系只是支持单重继承,而想要实现多重继承关系那就要用到接口了,换句话说就是用接口实现多个继承,而接口就是为了实现多重继承关系设计的。

一个类可以实现多个接口,一个类在实现多个接口的同时,还能再继承其他的类,而且接口和接口之间也是可以继承的。

接口定义了所有类继承接口时应遵循的语法合同。

接口定义了语法合同"是什么"的部分,而“派”生类定义了语法合同 "怎么做" 的部分。

接口定义了属性、方法和事件,这些都是接口的成员。

接口只包含了成员的声明。而派生类负责成员的定义。接口提供了派生类应遵循的标准结构。

多重继承的概念:多重继承指的是一个类可以同时继承多个类。(多重继承在C++中支持,在C#和Java中不支持)

接口定义的语法形式如下:

1 interface 接口名称

2 {

3 接口成员;

4 }

其中:

  1. 接口名称 通常是以 I 开头,再加上其他的单词构成。

例如创建一个计算的接口,可以命名为 ICompute。

  1. 接口成员 接口中定义的成员与类中定义的成员类似。

接口中定义的成员必须满足以下要求。

接口中的成员不允许使用 public、private、protected、internal 访问修饰符。

接口中的成员不允许使用 static、virtual、abstract、sealed 修饰符。

在接口中不能定义字段。

在接口中定义的方法不能包含方法体。

举例如下: 定义一个接口IWorker,其中包含一个动作叫DoWork;

1 interface IWorker

2 {

3 void DoWork();

4 }

二、接口的实现

1、接口的实现

接口的实现是通过继承的方式进行的。

接口实现需要注意的地方:

接口继承接口之后具有父接口的全部成员。

类继承接口之后需要实现接口的全部成员方法。

否则需要将该类定义为抽象类,未实现的接口方法会被定义为抽象方法。

继承时基类和接口之间,接口和接口之间要以逗号分隔

2、实现接口方式

接口的实现分为两种:显式实现接口和隐式实现接口

  1. 显式实现接口

显式实现接口需要使用接口名作为方法名的前缀。

注意事项:

a.显式实现接口时不需要指定访问修饰符。

b.显式实现的接口在调用时必须使用接口对象。

2)隐式实现接口

隐式实现接口不需要使用接口名作为方法名的前缀,但需要添加访问修饰符public。

小总结:

当类实现一个接口时,通常是使用隐式接口来实现的,这样可以方便的访问接口方法和类自身具有的一些方法和属性。

当类实现多个接口,并且接口中包含相同的方法名时,此时就要使用显式接口实现。

隐式接口实现,类和接口都可访问接口中方法。显式接口实现,只能通过接口访问。

三、接口中多态的实现

多态能使用类之间的继承关系来实现,通过多个类继承同一个接口,并实现接口中的成员也能完成多态的表示。

使用接口实现多态需要满足以下两个条件。

定义接口并使用类实现了接口中的成员。

创建接口的实例指向不同的实现类对象。

这就是我上课学到的C#的接口,希望可以帮助到你们。

以上就是我的分享,请多多指教。如果有更好的方法欢迎在评论区教导喔!

这篇关于C#接口的理解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!