abstract class VS Interfact

相同:

1. 都不能被实例化,都可以通过继承实现其抽象方法

2. 是抽象编程的技术基础

不同:

多继承。接口可以多继承,抽象类不可以

字段。抽象类可以包含字段,接口不可以

具体实现的成员。抽象类可以有具体实现的成员,接口不能

struct。接口可用与值类型,Struct可以继承接口,抽象类不能

can-do vs is-a。接口着重与can-do的关系,抽象类着重IS-A 的关系

成员能否被public 等修饰。接口的所有成员都不能用public,private 等修饰符修饰 ,抽象类可以。

原文地址:https://www.cnblogs.com/AlexHHC/p/3034003.html