接口中只能声明方法,属性,事件,索引器。不能包含字段、构造函数、析构函数、静态成员或常量。
抽象类中可以有方法的实现,也可以定义非静态的类变量。
抽象类只能被单继承,接口可以实现多个。
抽象类可以提供某些方法的部分实现,接口不可以。
抽象类的实例是它的子类给出的。接口的实例是实现接口的类给出的。
抽象类中加入一个方法,抽象类的子类就同时有了这个方法。接口中加入新的方法,实现该接口的类需要重新编写。
接口成员被定义为公共的。抽象类的成员可以是私有的、受保护的、内部的或受保护的内部成员。
接口用于规范。抽象类用于共性。