Logo
Section 1 / 12

接口定义

学习定义契约,以在无关类之间强制执行一致的行为。

导入

接口定义

学习定义契约,以在无关类之间强制执行一致的行为。

定义一个简单的接口

1public interface MyInterface 2{ 3}

遵循命名约定

1public interface IVehicle 2{ 3}
1namespace Interfaces; 2 3public interface IVehicle 4{ 5 int NumberOfWheels { get; } 6 void Drive(); 7 8 // 后续添加的新方法,带有默认实现 9 void PerformSafetyCheck() 10 { 11 Console.WriteLine("执行标准安全检查..."); 12 } 13}
1namespace Interfaces; 2 3// 我们以与继承类相同的方式实现接口 4public class ElectricCar : IVehicle 5{ 6 // 必须实现接口中定义的所有成员 7 public int NumberOfWheels { get; } = 4; 8 9 // 必须为接口中定义的方法提供实现 10 public void Drive() 11 { 12 Console.WriteLine("驾驶电动轿车。"); 13 } 14 15 // PerformSafetyCheck 未在此处实现,但代码仍可编译 16}
1using Interfaces; 2 3var car = new ElectricCar(); 4car.Drive();
...
Multiple interface implementation

实现多个接口的语法

1public class SuperClass : ICarryable, IMovable, IPlayable, ICloneable 2{ 3}

结合类继承与接口实现

1// Car 是 Vehicle 的一种,同时也可以被维修和调校 2public class Car : Vehicle, IRepairable, ITunable 3{ 4}

类与面向对象编程

实现接口