接口和抽象類的區別
Java提供和支持建立抽象類和接口函數
- 從設計層面來講,抽象是對類的抽象,是一種模板設計
- 接口是行爲的抽象,是一種行爲的規範
它們的實現有共同點,不一樣點在於:設計
- 接口中全部的方法隱含的都是抽象的。而抽象類則能夠同時包含抽象和非抽象的方法
- 類能夠實現不少個接口,可是隻能繼承一個抽象類
- 類能夠不實現抽象類和接口聲明的全部方法,固然,在這種狀況下,類也必須得聲明成是抽象的
- 抽象類能夠在不提供接口方法實現的狀況下實現接口
- Java接口中聲明的變量默認都是final的。抽象類能夠包含非final的變量
- Java接口中的成員函數默認是public的。抽象類的成員函數能夠是private,protected或者是public
- 接口是絕對抽象的,不能夠被實例化。抽象類也不能夠被實例化,可是,若是它包含main方法的話是能夠被調用的
歡迎關注本站公眾號,獲取更多信息