7 回答
TA貢獻(xiàn)17條經(jīng)驗(yàn) 獲得超14個(gè)贊
說實(shí)話這個(gè)問題我已經(jīng)回答了很多遍了,回答的我都想吐了,那么我就談?wù)劷涌诤统橄箢惖膮^(qū)別。接口和抽象類的共同點(diǎn)就是它們都可以包含抽象方法,并且它們都不可以創(chuàng)建對(duì)象?不同的之處就多了。抽象類除了可以包含抽象方法外還可以實(shí)體方法,用來給子類去繼承,抽象類還可以包含靜態(tài)成員 和非靜態(tài)成員。而接口中的方法全都是非靜態(tài)的并且全都是被public abstract 修飾的,接口中的變量全都是被public static final 修飾的 ,也就是說接口中的變量全都是常量,接口中不能包含靜態(tài)方法。接口不能有構(gòu)造函數(shù)而抽象類卻可以。 另外從從繼承的角度上說,類于類之間是單繼承,接口與接口之間確實(shí)多繼承,從某種角度上說,也彌補(bǔ)了java單繼承的不足。
TA貢獻(xiàn)278條經(jīng)驗(yàn) 獲得超76個(gè)贊
借口是一些事物的共通點(diǎn),比如一些基本的方法,利于增刪查改,抽象類是對(duì)象的共有特征多態(tài)化實(shí)現(xiàn)方式, 通過繼承可以向上引用。
TA貢獻(xiàn)121條經(jīng)驗(yàn) 獲得超57個(gè)贊
接口是一系列還未實(shí)現(xiàn)的方法的集合,而抽象類可以包含實(shí)現(xiàn)的方法和屬性,也就是說抽象類的約束多
TA貢獻(xiàn)1017條經(jīng)驗(yàn) 獲得超1032個(gè)贊
添加回答
舉報(bào)
