Dart 接口

2024 年 8 月 29 日 | 阅读 3 分钟

接口定义了任何实体必须遵守的语法。 Dart 没有任何单独的语法来定义接口。 接口定义与类相同,其中对象可以访问任何一组方法。 类声明本身可以是接口。

需要使用关键字 implement,后跟类名才能使用接口。 实现类必须提供已实现接口的所有函数的完整定义。 我们可以说,一个类必须在接口中定义每一个带有主体的函数,我们才想实现。

声明接口

Dart 不提供直接声明接口的语法。 隐式地,类声明本身就是一个接口,包含类的所有实例成员以及它实现的任何接口。

实现接口

要使用接口方法,必须使用 implements 关键字由另一个类来实现该接口。 实现了接口的类必须提供属于接口的所有方法的完整实现。 以下是实现接口的语法。

语法

在下面的例子中,我们声明一个类 Employee。 隐式地,Engineer 类实现了 Employee 类的接口声明。 让我们通过以下代码片段来理解上面的例子。

示例 -

输出

I am working as engineer

说明

在上面的例子中,我们定义了一个 Engineer 类作为实现 Engineer 类的接口。 然后,我们在两个类中都定义了相同的方法 display()。 此方法在 Engineer 类中被重写,因此我们在 main() 函数中创建了 Engineer 类的对象,并调用了 display() 函数。 它将输出打印到屏幕上。

实现多重继承

我们之前已经讨论过 Dart 不支持多重继承,但我们可以应用多个接口。 我们可以说,使用多个接口,我们可以在 Dart 中实现多重继承。 语法如下所示。

语法

让我们理解下面的例子。

示例 -

输出

I am Handscomb
My age is 25
I am a professor of Data Structure
My salary is 50000

说明

在上面的例子中,我们在 College 类中实现了多个接口。 Student 和 Faculty 类的每个数据成员都在 College 类中被重写。 我们创建了 College 类的对象并调用了重写函数。 它打印了结果。

实现接口的规则

  1. 实现接口的类必须覆盖接口的每个方法和实例变量。
  2. Dart 不提供直接声明接口的语法。 类声明可以被认为是接口本身。
  3. 接口类必须提供属于接口的所有方法的完整实现。
  4. 我们可以同时实现一个或多个接口。
  5. 使用接口,我们可以实现多重继承。

下一个主题Dart 异常