关键字:interface
接口不是类,但是接口和类是平级的,不允许在接口中写类,也不允许在类中写接口
接口是一个类型,并且接口是引用数据类型(可以实例化)
接口定义的是一系列的规范
一个接口可以被多个类实现
接口中的方法:
不能有访问权限修饰符,但是访问权限不是private;
接口中的方法只有声明部分,没有实现部分;void charge();
接口中的方法虽然和抽象方法很像,但不是抽象方法,不能用abstract修饰;
类在实现接口的时候的特点:
如果一个类需要继承一个父类和接口的时候,则父类必须在第一位;
一个类可以实现多个接口,如果接口中有相同的方法,只需要实现一次就可以了
接口之间可以继承,并且接口之间的继承是多继承,子接口拥有父接口中的所有方法
一个类在实现接口的时候,需要将接口中的方法全部实现
如果一个类实现了接口,那么这个类叫做这个接口的实现类
抽象类中实现接口:
抽象类在实现接口的时候,需要实现接口中的方法
抽象类在实现接口方法的时候,可以实现为抽象方法
接口中可以写访问器:
interface IHuman { int Age { set; } } class Person : IHuman { public int Age { set { } get { return 0; } } }
接口的多态体现:
接口的引用可以指向实现类的对象
把一个实现类类型的数据转型为接口类型---->向上转型
把一个接口类型的数据转型为实现类类型---->向下转型