抽象和接口

抽象abstract:

抽象是為了隱藏,用于擴(kuò)展對(duì)象的行為和功能

修飾變量:可以是常量,可以為變量

修飾方法:1.只有方法聲明,沒(méi)有方法實(shí)現(xiàn)

? ? ? ? ? ? ? ? ? ? 2.需要子類重寫,不能用private,final修飾

修飾類:1.不能被實(shí)例化

????????????????2.類包含抽象方法必須在子類中被實(shí)現(xiàn),否則子類只能聲明abstract

????????????? ? 3.抽象類中可以有抽象屬性,抽象方法,也可以沒(méi)有,但是一旦方法聲明為抽象,類必須抽象

接口interface

接口解決了單繼承的問(wèn)題,降低程序模塊的耦合。

1.只含有常量和抽象方法,沒(méi)有變量和方法實(shí)現(xiàn)。即成員類型默認(rèn)public static final,方法默認(rèn)public abstract,

2.接口是一套行為規(guī)范

3.接口不是一個(gè)類,不能實(shí)例化,沒(méi)有構(gòu)造器


對(duì)比:

1.接口不能含有任何非抽象方法,而抽象類可以

2.類可以實(shí)現(xiàn)多個(gè)接口,但只有一個(gè)父類,而接口可以多實(shí)現(xiàn)

3.抽象類有構(gòu)造方法,接口沒(méi)有。

4.設(shè)計(jì)理念區(qū)別

抽象類:被繼承體現(xiàn)的是:is a 的關(guān)系,抽象類中定義的是繼承體系的共性功能

接口:實(shí)現(xiàn)接口體現(xiàn)的是:like a的關(guān)系,接口中定義的是該繼承體系的擴(kuò)展功能

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容