java接口中的default(默認(rèn))使用方式
更新時間:2025年03月24日 08:40:27 作者:碼靈
這篇文章主要介紹了java接口中的default(默認(rèn))使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
java接口的default(默認(rèn))使用
定義
Java的接口中有一種特殊的方法,叫做默認(rèn)方法。
接口中的默認(rèn)方法有以下特點:
- default方法可以有方法體。
- 接口中的普通方法必須被實現(xiàn)類重寫;默認(rèn)方法可以不被實現(xiàn)類重寫。
作用
這個特點在實踐中的具體作用是:
- 當(dāng)我們進行業(yè)務(wù)擴展時,需要在接口中新增方法。
- 如果新增的這個方法寫成普通方法的話,那么需要在該接口所有的實現(xiàn)類中都重寫這個方法。
- 如果新增的方法定義為default類型,就不需要在所有的實現(xiàn)類中全部重寫該default方法,哪個實現(xiàn)類需要新增該方法,就在哪個實現(xiàn)類中進行實現(xiàn)。
但是,需要注意在什么情況下,default的使用會受限
- 如果一個實現(xiàn)類只實現(xiàn)了一個接口,那么可以不用重寫接口中的默認(rèn)方法。
- 如果一個實現(xiàn)類實現(xiàn)了多個接口,并且這些接口中有兩個接口的默認(rèn)方法是一樣的,那么就必須在實現(xiàn)類中重寫默認(rèn)方法。
默認(rèn)方法可以通過接口的實現(xiàn)對象直接調(diào)用,可以被接口的實現(xiàn)類重寫。
interface test{ default public void print() { System.out.println("This is a interface with default"); } }
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
解決ObjectMapper.convertValue() 遇到的一些問題
這篇文章主要介紹了解決ObjectMapper.convertValue() 遇到的一些問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-06-06MyBatis中有關(guān)int和Integer的使用方式
這篇文章主要介紹了MyBatis中有關(guān)int和Integer的使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03