最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java8新特性之接口的static和default的使用

 更新時間:2020年01月17日 09:50:42   作者:二師兄-公眾號-程序新視界  
這篇文章主要介紹了java8新特性之接口的static和default的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

static方法

java8中為接口新增了一項功能:定義一個或者更多個靜態(tài)方法。用法和普通的static方法一樣。

接口中可以定義static方法,可通過接口名稱.方法名()調(diào)用,實現(xiàn)類不能繼承static方法;

public interface InterfaceA {
  /**
   * 靜態(tài)方法,不能被實現(xiàn)類重寫
   */
  static void hello() {
    System.out.println("Hello Java8");
  }
}
 

使用方法:

public class Test {
  public static void main(String[] args) {
    InterfaceA.hello();
  }
}
 

default方法

在接口中,增加default方法, 是為了既有的成千上萬的Java類庫的類增加新的功能, 且不必對這些類重新進(jìn)行設(shè)計。 比如, 只需在Collection接口中增加default Stream stream(), 相應(yīng)的Set和List接口以及它們的子類都包含此的方法, 不必為每個子類都重新copy這個方法。

接口中可以定義default方法,default修飾的方法有方法體,表示這個方法的默認(rèn)實現(xiàn),子類可以直接調(diào)用,可以選擇重寫或者不重寫;

public interface Human {

  /**
   * 必須被重寫
   */
  void oldMethod();

  /**
   * 實現(xiàn)類可以選擇重寫,也可以不重寫
   */
  default void hello(){
    System.out.println("hello Human!");
  }
}
 

但是如果實現(xiàn)類同時實現(xiàn)了接口Human和接口Food接口,同時Food接口中也定義了同名的default方法,那么實現(xiàn)類中必須重寫兩個方法。

public interface Food {
  default void hello(){
    System.out.println("hello Food!");
  }
}
 
public class Person implements Human,Food {

  @Override
  public void oldMethod() {
  }

  /**
   * 實現(xiàn)的多個接口中有方法簽名相同的default方法時,實現(xiàn)類必須重寫該方法
   */
  @Override
  public void hello() {
    System.out.println("Human eats Food!");
  }
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • IDEA中HTML通過servlet3.0注解名提交表單到servlet類找不到頁面的問題

    IDEA中HTML通過servlet3.0注解名提交表單到servlet類找不到頁面的問題

    這篇文章主要介紹了IDEA中HTML通過servlet3.0注解名提交表單到servlet類找不到頁面的問題,本文通過場景描述及問題解析,給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • Java C++題解leetcode 1684統(tǒng)計一致字符串的數(shù)目示例

    Java C++題解leetcode 1684統(tǒng)計一致字符串的數(shù)目示例

    這篇文章主要為大家介紹了Java C++題解leetcode 1684統(tǒng)計一致字符串的數(shù)目示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • java使用itext如何直接生成pdf

    java使用itext如何直接生成pdf

    在工作中,制作PDF文件是常見需求,尤其是需要插入動態(tài)數(shù)據(jù)或圖像時,使用PDF模板填充表單域通常足夠,但對于復(fù)雜文件,可以通過拼接PDF內(nèi)容來靈活排版,iText庫提供了豐富的PDF操作功能,如設(shè)置頁面大小、邊距、字體、生成動態(tài)表格、添加水印、設(shè)置密碼等
    2024-09-09
  • SpringBoot項目依賴和配置最新示例講解

    SpringBoot項目依賴和配置最新示例講解

    這篇文章主要介紹了SpringBoot項目依賴和配置,這里主要是搭建項目常用到的maven依賴以及搭建項目會需要用到的一些配置文件,本文通過示例代碼給大家詳細(xì)講解,需要的朋友可以參考下
    2022-11-11
  • Java如何識別圖片或掃描PDF中的文字詳解

    Java如何識別圖片或掃描PDF中的文字詳解

    這篇文章主要介紹了Java如何識別圖片或掃描PDF中文字的相關(guān)資料,介紹了Java中使用Spire.OCRforJava庫來識別圖片和掃描PDF文件中的文字,需要的朋友可以參考下
    2025-01-01
  • springboot 集成pgsql+mybatis plus的詳細(xì)步驟

    springboot 集成pgsql+mybatis plus的詳細(xì)步驟

    集成 Spring Boot、PostgreSQL 和 MyBatis Plus 的步驟與 MyBatis 類似,只不過在 MyBatis Plus 中提供了更多的便利功能,如自動生成 SQL、分頁查詢、Wrapper 查詢等,下面分步驟給大家介紹springboot 集成pgsql+mybatis plus的過程,感興趣的朋友一起看看吧
    2023-12-12
  • Java中Integer128的坑

    Java中Integer128的坑

    本文主要介紹了Java中Integer128的坑,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-03-03
  • SpringBoot使用MyBatis-Plus解決Invalid?bound?statement異常

    SpringBoot使用MyBatis-Plus解決Invalid?bound?statement異常

    這篇文章主要介紹了SpringBoot使用MyBatis-Plus解決Invalid?bound?statement異常,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • Spring Boot中配置定時任務(wù)、線程池與多線程池執(zhí)行的方法

    Spring Boot中配置定時任務(wù)、線程池與多線程池執(zhí)行的方法

    這篇文章主要給大家介紹了關(guān)于Spring Boot中配置定時任務(wù)、線程池與多線程池執(zhí)行的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Spring Boot具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Java中截取字符串方法的兩種用法

    Java中截取字符串方法的兩種用法

    這篇文章主要給大家介紹了關(guān)于Java中截取字符串方法的兩種用法,在Java開發(fā)中經(jīng)常會涉及到對字符串進(jìn)行截取操作,字符串截取是一種常見且重要的字符串處理技巧,可以根據(jù)實際需求獲取字符串的指定部分,需要的朋友可以參考下
    2023-09-09

最新評論

福清市| 沐川县| 城市| 盖州市| 栾川县| 泾川县| 通辽市| 常宁市| 太白县| 新竹县| 乐都县| 深泽县| 临夏市| 宜宾市| 徐闻县| 吴川市| 绍兴县| 武乡县| 石屏县| 白河县| 翁源县| 怀柔区| 马公市| 南召县| 福建省| 房产| 资阳市| 永修县| 深州市| 保山市| 陆河县| 阜新市| 防城港市| 织金县| 长兴县| 简阳市| 西城区| 临武县| 巴里| 万年县| 达孜县|