更新時間:2020-10-28 17:47:13 來源:動力節點 瀏覽1424次
想要了解Java接口特性,我們首先要知道接口并不是Java語言所獨有的,接口泛指實體把自己提供給外界的一種抽象化物(可以為另一實體),用以由內部操作分離出外部溝通方法,使其能被內部修改而不影響外界其他實體與其交互的方式。
在Java中看到接口,第一個想到的可能就是C++中的多重繼承和Java中的另外一個關鍵字abstract。從另外一個角度實現多重繼承是接口的功能之一,接口的存在可以使Java中的對象可以向上轉型為多個基類型,并且和抽象類一樣可以防止他人創建該類的對象,因為接口不允許創建對象。
在Java中,interface關鍵字用來聲明一個接口,它可以產生一個完全抽象的類,并且不提供任何具體實現。interface 的特性如下:
1.接口中的方法可以有參數列表和返回類型,但不能有任何方法體。
2.接口中可以包含字段,但是會被隱式的聲明為 static 和 final 。
3.接口中的字段只是被存儲在該接口的靜態存儲區域內,而不屬于該接口。
4.接口中的方法可以被聲明為 public 或不聲明,但結果都會按照 public 類型處理。
5.當實現一個接口時,需要將被定義的方法聲明為 public 類型的,否則為默認訪問類型, Java 編譯器不允許這種情況。
6.如果沒有實現接口中所有方法,那么創建的仍然是一個接口。
7.擴展一個接口來生成新的接口應使用關鍵字 extends ,實現一個接口使用 implements 。
8.接口中的方法是抽象方法(abstract),不能是靜態方法(static).接口的所有方法都是抽象的,而抽象方法是沒有static,有static的方法是不能override的,所以這樣定義接口才有意義。
同時在Java8中,接口有了新的特性:
1.默認方法:允許接口方法定義默認實現,子類方法不必須實現此方法而就可以擁有該方法及實現。默認方法使用 default 關鍵字修飾??梢酝ㄟ^實現類對象來調用。我們在已有的接口中提供新方法的同時,還保持了與舊版本代碼的兼容性。
比如:java 8 API中對Collection、List、Comparator等接口提供了豐富的默認方法。
2. 靜態方法:使用 static 關鍵字修飾??梢酝ㄟ^接口直接調用靜態方法,并執行其方法體。我們經常在相互一起使用的類中使用靜態方法。你可以在標準庫中找到像Collection/Collections或者Path/Paths這樣成對的接口和類。
以上就是為小伙伴們總結的Java接口特性,工欲善其事必先利其器,我們只有掌握了所有java接口特性才能隨心所欲地調用Java接口,實現更多的功能。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習