C语言中的接口和抽象类都是用于实现多态性的机制,但是它们有一些区别,接口使用interface关键字声明,抽象类使用abstract关键字声明,一个类可以实现多个接口,但只能继承一个抽象类,接口只能定义常量,抽象类可以定义普通成员变量,接口中的方法默认都是公共的抽象方法,不包含具体的实现代码;抽象类可以包含抽象方法和非抽象方法,其中抽象方法没有具体的实现,而非抽象方法有具体的实现代码 。