相同点: 都不能被直接实例化;都可以通过继承实现其抽象方法。 不同点 接口支持多继承,抽象类不能实现多继承;接口只能定义行为,抽象类可以定义行为还可以提供实现;接口可以用于支持回调,抽象类不能实现回调(因为继承不支持);接口只包含方法、属性、索引器、事件签名但不能定义字段和包含实现的方法,抽象类可以定义字段、属性、包含有实现的方法接口可以作用于值类型和引用类型,抽象类只能作用于引用类型。 推荐阅读 抽象类与抽象方法 面向对象基础 抽象类和接口的区别