可能是重复的问题: 需要抽象类和接口吗?
当我们有抽象类时,为什么还需要接口?
答案:唯一需要接口的目的是实现多重继承。
如果我错了,请纠正我。
优先使用实现而非继承。
通过实现接口比继承抽象类更加灵活。你只能继承一个类,但是可以实现多个接口。
在SO上有很多类似的问题。
为什么编程时使用抽象类而不是接口是错误的?
我在这里回答了每个方面的优缺点,你可能想要查看一下。