后端框架中,几乎处处皆接口,可以说是面向接口编程。它的主要作用有二,一是用于约束其实现类应该具有哪些功能或行为;二是利用其语法特性-多态,实现依赖注入IOC。本节主要说作用一,作用二在《多态》章节中说。TS引入了接口(JS没有接口,TS编译为JS后,接口不会生成代码),它也可以用于约束其实现类的行为,但因为前端很少使用类,所以这个功能很少用到。在前端,接口主要用于定义字面量对象的类型,和type类似,在纯后端人眼里,可能会觉得即奇葩又鸡嫩。
一、C#中的接口
1.1 接口的定义和使用(作用)
//1、基本使用========================================================================
//接口的访问修饰符默认是public,接口成员不能加访问修饰符。最佳实践是接口不要加访问修饰符
//按照习惯,接口名称加前缀I,其它命名规则同“类”
interface IMovable
{
//接口成员可以是方法、属性和事件,绝大多数情况下都是用方法
//只有方法签名(方法名-参数-返回值),没有方法体(具体方法),具体方法在实现类中实现
void Move();
}
//Car称为实现类,在C#中继承和实现都是用“:”
//一个类只能继承一个类(详见《继承》章节),但可以实现多个接口
//如果实现多个接口,每个接口定义的方法,都要实现
public class Car : IMovable
{
//实现接口的方法Move,这里可以使用修改符了
public void Move()
{
Console.WriteLine("汽车在移动");
}
//实现类中可以有自己的字段、属性、方法、事件等成员
public string Name = "MC