就是接口可以有實現(xiàn)方法,而且不需要實現(xiàn)類去實現(xiàn)其方法。只需在方法名前面加個default關(guān)鍵字即可。
為什么出現(xiàn)默認(rèn)方法?
首先,之前的接口是個雙刃劍,好處是面向抽象而不是面向具體編程,缺陷是,當(dāng)需要修改接口時候,需要修改全部實現(xiàn)該接口的類,目前的java 8之前的集合框架沒有foreach方法,通常能想到的解決辦法是在JDK里給相關(guān)的接口添加新的方法及實現(xiàn)。
然而,對于已經(jīng)發(fā)布的版本,是沒法在給接口添加新方法的同時不影響已有的實現(xiàn)。
所以引進(jìn)的默認(rèn)方法。他們的目的是為了解決接口的修改與現(xiàn)有的實現(xiàn)不兼容的問題。