面試必問:抽象類和接口的區別及聯繫

在平常的開發工作中,經常會用到抽象類和接口。在面試的時候,這個知識點也會被經常問到,那麼,接口和抽象類具體有什麼區別和聯繫呢?

接口:

抽象類:

看了上面兩段代碼,發現接口中方法不能有方法體,方法不能定義爲私有的,抽象類中的方法必須有方法體。接口主要用來實現,可以多實現,抽象類用來繼承,Java中是單繼承。
       總結:1:接口用來實現,可以多實現;抽象類用來繼承,是單繼承。

                  2:接口中的方法不能有方法體,抽象類中的方法有方法體。

                  3:接口中只能做方法聲明,抽象類中可以做方法的聲明,也可以實現。

                  4:抽象類和接口都不能實例化。

                  5:抽象類中可以有構造方法,接口中不能有構造方法。

                  6:抽象類中可以沒有抽象方法,但是有抽象方法的類,一定是抽象類。

                  7:抽象類中可以包含非抽象的方法,接口中的方法都是抽象方法。

                  8:抽象類中可以包含靜態方法,接口中不能包含靜態方法。

        知識就是要不斷的學習,不斷的複習,纔會記憶的更加的深刻!加油,美好的風景一直在路上!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章