Java 9 中在介面中定義的變數/方法有哪些?


從 Java 9 開始,我們可以在介面中新增私有 方法 私有 靜態 方法 。在介面中使用私有方法的優點在於減少了預設 方法和靜態 方法之間的程式碼重複。例如,如果兩個或多個預設方法需要共享一些程式碼,則可以為這些方法建立私有方法 ,然後從每個預設方法呼叫該私有方法。

在 Java 9 中,在介面中定義了以下變數/方法 

  • 常量
  • 抽象方法
  • 預設方法
  • 靜態方法
  • 私有方法
  • 私有靜態方法

示例

import java.util.*;
import java.util.stream.*;
interface InterfaceTest {
   static void printEvenNumbers() {
      getDataStream().filter(i -> i%2==0).forEach(System.out::println);
   }
   static void printLOddNumbers() {
      getDataStream().filter(i -> i%2!=0).forEach(System.out::println);
   }
   private static Stream<Integer> getDataStream() {       // private static method
      List<Integer> list = Arrays.asList(10, 13, 5, 15, 12, 20, 11, 25, 16);
      return list.stream();
   }
}
public class InterfacePrivateMethodTest implements InterfaceTest {
   public static void main(String args[]) {
      System.out.println("The even numbers: ");
      InterfaceTest.printEvenNumbers();
      System.out.println("The odd numbers: ");
      InterfaceTest.printLOddNumbers();
   }
}

輸出

The even numbers:
10
12
20
16
The odd numbers:
13
5
15
11
25

更新於: 2020-02-24

289 次瀏覽

開啟您的 職業生涯

透過完成課程進行認證

開始
廣告