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

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

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

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

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

static 也是用在接口中, 同Class中的static方法一樣, 是類(lèi)級(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)類(lèi). 那么沒(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)類(lèi).當(dāng)調(diào)用ClassAB的defaultFunction()時(shí),不知道該調(diào)取哪個(gè)接口的了,所以,ClassAB需要自己重寫(xiě)這個(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開(kāi)發(fā)環(huán)境的配置

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

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

    springboot集成redisson的三種方式

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

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

    從線程中返回?cái)?shù)據(jù)和向線程傳遞數(shù)據(jù)類(lèi)似。也可以通過(guò)類(lèi)成員以及回調(diào)函數(shù)來(lái)返回?cái)?shù)據(jù)。但類(lèi)成員在返回?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的使用詳解,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-08-08
  • Java線程之線程同步synchronized和volatile詳解

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

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

最新評(píng)論

沙田区| 民乐县| 简阳市| 海城市| 卓资县| 陕西省| 巨野县| 商洛市| 平果县| 巴中市| 大英县| 彭泽县| 资溪县| 济南市| 桃源县| 肇州县| 政和县| 庐江县| 敦化市| 银川市| 永泰县| 商丘市| 广平县| 门源| 南华县| 湾仔区| 涞水县| 乾安县| 湛江市| 德兴市| 邛崃市| 康乐县| 华亭县| 无棣县| 乌鲁木齐县| 静乐县| 新巴尔虎左旗| 新昌县| 南乐县| 获嘉县| 沂水县|