Java8中介面的預設方法

2021-08-02 16:33:51 字數 848 閱讀 2578

在jdk 8之前,乙個介面不能包含任何實現。介面只包含常量和方法簽名。

從jdk 8開始,可以定義介面中方法的預設實現。這些方法稱為預設方法。

使用關鍵字"default"宣告乙個預設方法,它包含乙個方法體。

所有實現類介面的預設方法都可用。如果實現類想要使用它,它可以使用它,或者它可以忽略預設實現並建立自己的實現。

即使介面現在可以定義預設方法,如果要建立例項,介面仍然必須由類實現。

介面示例:

package insping;

public

inte***ce myinte***ce

}

上述介面宣告乙個抽象方法add()和乙個預設方法multiply()。

接著我們來建立乙個實現這個介面的類。請注意,實現類只需要實現抽象方法。預設方法可以按原樣使用,除非實現類要更改行為。

package insping;

public

class

myclass

implements

myinte***ce

}

上面的myclass類實現了myif介面,並提供了add()方法的實現。

現在,如果我們建立乙個myclass的例項並呼叫multiply()方法,則將使用預設方法實現.

測試示例:

package insping;

public

class test

}

結果:

和 = 15

乘 = 50

java8中幾個函式式介面的小例子

function t作為輸入,返回的r作為輸出 functionfunction x predicate t作為輸入,返回的boolean值作為輸出 predicatepre x system.out.println pre.test hello world consumer t作為輸入,執行某種動...

java 8 函式式介面

functionalinte ce public inte ce personsearch functionalinte ce public inte ce personsearch1 functionalinte ce public inte ce personsearch2 方法的預設實現 介面...

Java8 中的常用函式式介面

函式式介面 predicate t 函式描述符 t boolean 原始型別特化 intpredicate,longpredicate,doublepredicate 判斷是否是正數 intpredicate predicate i i 0 true predicate.test 5 函式式介面 c...