“`相同点:

(1)都可以被继承

(2)都不能被实例化

(3)都可以包含方法的声明

<strong>不同点:</strong>

(1)抽象类被子类继承;接口被类实现

(2)抽象类只能被单个类继承;接口可继承接口,并可多继承接口

(3)抽象基类可以定义字段、属性、方法实现;接口只能定义属性、索引器、事件、和方法声明,不能包含字段

(4)抽象类可以做方法声明,也可做方法实现;接口只能做方法声明

(5)<strong>具体派生类</strong>必须<strong>覆盖(override)</strong>抽象基类的<strong>抽象方法</strong>;派生类必须实现接口的所有方法

(6)抽象类是一个不完整的类,需要进一步细化;接口是一个行为规范

(7)抽象类中的虚方法或抽象方法必须用public修饰;接口中的所有成员默认为public,不能有private修饰符(也不能用public进行显示修饰)

 

“`

Was this helpful?

0 / 0

发表回复 0

Your email address will not be published.