Java接口和抽象類的異同

相同點:

       1.都位於繼承的頂端,用於被其他子類或接口繼承或實現.

       2.都不能實例化.

       3.都可以定義抽象方法,其非抽象子類必須覆寫這些抽象方法.

區別:

       1.接口沒有構造方法,抽象類有構造方法.

       2.接口只能包含抽象方法,抽象類可以包含普通方法和抽象方法.

       3.一個類只能繼承一個直接父類(可能是抽象類),卻可以實現多個接口(接口彌補了java的單繼承)

       4.變量:接口裏默認是public static final修飾,抽象類是默認包訪問權限.

       5.方法:接口裏默認是public abstract修飾,抽象類默認是包訪問權限.

       6.內部類:接口裏默認是public static修飾,抽象類默認是包訪問權限.

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