抽象類和接口的區(qū)別:
A:成員區(qū)別:
抽象類:
成員變量:可以使變量,也可以是常量。
構造方法:有。
成員方法:可以抽象,也可以非抽象。
接口:
成員變量:只能是常量。
成員方法:只能是成員方法。
B:關系與區(qū)別
類與類:繼承關系,只能單繼承,可以多層繼承。
類與接口:實現關系,可以單實現,也可以多實現,并且還可以在繼承一個類的同時實現多個接口。
接口與接口:繼承關系,可以單繼承,也可以多繼承。
C:設計理念區(qū)別:
抽象類,被繼承體現的是:“is a”的關系。抽象類中定義的是該繼承體系的共性功能。
接口:被實現的是:“l(fā)ike a”的關系。接口中定義的是該繼承體系的擴展功能。