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

Java8的default和static關(guān)鍵字的使用講解

 更新時(shí)間:2019年01月30日 11:57:57   作者:裴星宙  
今天小編就為大家分享一篇關(guān)于Java8的default和static關(guān)鍵字的使用講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧

1. default和static關(guān)鍵字

a.default 用在接口中, 為該接口的實(shí)現(xiàn)類的方法.  --> 不能通過(guò)接口直接調(diào)用.  

static 也是用在接口中, 同Class中的static方法一樣, 是類級(jí)別的方法, 而不是對(duì)象的方法.  --> 可以通過(guò)接口直接調(diào)用. 

b.一個(gè)接口可以有多個(gè)default方法, 也可以有多個(gè)static方法.

2. default 在使用中的注意事項(xiàng)

如下面的例子

有兩個(gè)接口, InterA和InterB, 都有一個(gè)方法, 為defaultFunction(),ClassA僅僅為InterA的實(shí)現(xiàn)類. 那么沒(méi)有報(bào)錯(cuò). 當(dāng)調(diào)用ClassA的defaultFunction()時(shí),會(huì)自動(dòng)調(diào)取InterA的方法.

但是ClassAB同時(shí)為InterA和InterB的實(shí)現(xiàn)類.當(dāng)調(diào)用ClassAB的defaultFunction()時(shí),不知道該調(diào)取哪個(gè)接口的了,所以,ClassAB需要自己重寫這個(gè)方法. 

3. Static則和default不同, 

打印結(jié)果

4. 源碼

public class DefaultDemoApp {
  public static void main(String[] args) {
    new ClassA().defaultFunction();
    new ClassAB().defaultFunction();
  }
}
interface InterA {
  default void defaultFunction() {
    System.out.println("This is A defaultFunction");
  }
  static void staticFunction() {
    System.out.println("This is A status function");
  }
}
interface InterB {
  default void defaultFunction() {
    System.out.println("This is B defaultFunction");
  }
  static void staticFunction() {
    System.out.println("This is B status function");
  }
}
class ClassA implements InterA {
}
class ClassAB implements InterA, InterB {
  @Override
  public void defaultFunction() {
    InterB.staticFunction();
  }
}

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

  • Java并發(fā)編程this逃逸問(wèn)題總結(jié)

    Java并發(fā)編程this逃逸問(wèn)題總結(jié)

    本篇文章給大家詳細(xì)分析了Java并發(fā)編程this逃逸的問(wèn)題分享,對(duì)此有需要的朋友參考下。
    2018-02-02
  • Java中的異常處理機(jī)制介紹(非常全面!)

    Java中的異常處理機(jī)制介紹(非常全面!)

    異??赡苁窃诔绦驁?zhí)行過(guò)程中產(chǎn)生的,也可能是程序中throw主動(dòng)拋出的,下面這篇文章主要給大家介紹了關(guān)于Java中異常處理機(jī)制的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-01-01
  • Java 動(dòng)態(tài)代理深入理解

    Java 動(dòng)態(tài)代理深入理解

    這篇文章主要介紹了Java 動(dòng)態(tài)代理深入理解的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • Activiti開發(fā)環(huán)境的配置

    Activiti開發(fā)環(huán)境的配置

    本篇文章主要內(nèi)容介紹了Activiti開發(fā)環(huán)境的配置,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • springboot集成redisson的三種方式

    springboot集成redisson的三種方式

    本文主要介紹了springboot集成redisson的三種方式,包含自定義配置+手動(dòng)注入,使用Yaml方式批量讀取配置和spring boot自動(dòng)配置類這三種,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • java多線程編程之從線程返回?cái)?shù)據(jù)的兩種方法

    java多線程編程之從線程返回?cái)?shù)據(jù)的兩種方法

    從線程中返回?cái)?shù)據(jù)和向線程傳遞數(shù)據(jù)類似。也可以通過(guò)類成員以及回調(diào)函數(shù)來(lái)返回?cái)?shù)據(jù)。但類成員在返回?cái)?shù)據(jù)和傳遞數(shù)據(jù)時(shí)有一些區(qū)別,下面讓我們來(lái)看看它們區(qū)別在哪
    2014-01-01
  • java中單例模式講解

    java中單例模式講解

    這篇文章主要介紹了java中單例模式,本文通過(guò)簡(jiǎn)單的案例,講解了該模式在java中的使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Can''t use Subversion command line client:svn 報(bào)錯(cuò)處理

    Can''t use Subversion command line client:svn 報(bào)錯(cuò)處理

    這篇文章主要介紹了Can't use Subversion command line client:svn 報(bào)錯(cuò)處理的相關(guān)資料,需要的朋友可以參考下
    2016-09-09
  • Java?中?Class?Path?和?Package的使用詳解

    Java?中?Class?Path?和?Package的使用詳解

    這篇文章主要介紹了Java?中?Class?Path和Package的使用詳解,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-08-08
  • Java線程之線程同步synchronized和volatile詳解

    Java線程之線程同步synchronized和volatile詳解

    這篇文章主要介紹了Java線程之線程同步synchronized和volatile詳解,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11

最新評(píng)論

山东| 溧阳市| 温宿县| 广灵县| 阳信县| 江城| 冷水江市| 寿宁县| 呼和浩特市| 德州市| 阿坝县| 怀柔区| 平利县| 桓仁| 洪湖市| 广汉市| 蚌埠市| 运城市| 太湖县| 山东| 白银市| 新竹县| 哈巴河县| 河间市| 泗阳县| 武强县| 海门市| 邢台县| 嘉祥县| 呼玛县| 清水河县| 木兰县| 信宜市| 从江县| 青阳县| 长宁县| 宣城市| 尤溪县| 酒泉市| 永德县| 简阳市|