首頁 > Java > java教程 > 功能介面

功能介面

Patricia Arquette
發布: 2025-01-07 08:10:40
原創
418 人瀏覽過

Interfaces funcionais

函數式介面定義

  • 只包含一個抽象方法。

  • 可以有標準和/或靜態方法。

  • 抽象方法沒有指定實作。

MyValue 介面 {
double getValue();
}

提醒:在函數式介面中,抽象修飾符不是明確需要的,因為 Java 假定介面中沒有實作的任何方法都自動是抽象的。

將 Lambda 指派給函數式介面

MyValue myVal = () -> 98.6;

lambda 的回傳類型和參數必須與抽象方法相容。

抽象方法呼叫:

System.out.println("常數值:" myVal.getValue());

結果:98.6。

帶參數的函數介面

MyParamValue 介面 {
double getValue(double v);
}

計算倒數的 Lambda:

MyParamValue myPval = (n) -> 1.0 / n;
System.out.println("4的倒數是" myPval.getValue(4.0));

  • 結果:0.25。

型態推論

由上下文推斷的參數類型:
(n)-> 1.0/n; // 類型推論為 double

明確宣告類型(可選):
(雙n)-> 1.0 / n;

相容性規則

  • lambda 表達式中參數的型別和數量必須與抽象方法相符。

(int x, int y) -> x y;

結論

  • 函數式介面支援使用 lambda。

  • Lambda 表達式為抽象方法提供了簡潔的實作。

  • 目標類型上下文和類型相容性對其使用至關重要。

以上是功能介面的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板