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

Java接口默認(rèn)方法帶來(lái)的問(wèn)題分析【二義性問(wèn)題】

 更新時(shí)間:2019年08月12日 11:45:38   作者:cakincqm  
這篇文章主要介紹了Java接口默認(rèn)方法帶來(lái)的問(wèn)題,結(jié)合實(shí)例形式分析了java接口帶來(lái)的二義性問(wèn)題,需要的朋友可以參考下

本文實(shí)例分析了Java接口默認(rèn)方法帶來(lái)的問(wèn)題。分享給大家供大家參考,具體如下:

一 點(diǎn)睛

Java 8中,如果一個(gè)類(lèi)實(shí)現(xiàn)兩個(gè)或多個(gè)接口,即“變相”的多繼承,但是若其中兩個(gè)接口都包含一個(gè)名字相同的default方法,會(huì)出現(xiàn)二義性問(wèn)題。

二 實(shí)戰(zhàn)

1 代碼

interface faceA          //定義接口faceA
{
  void someMethod( );
  default public void DefaultMethod( )//定義接口中默認(rèn)方法
  {
    System.out.println("Default method in the interface A");
  }
}
interface faceB          //定義接口faceB
{
  default public void DefaultMethod( )//定義接口InterfaceB中同名的默認(rèn)方法
  {
    System.out.println("Default method in the interface B");
  }
}
class DefaultMethodClass implements faceA,faceB //定義子類(lèi)實(shí)現(xiàn)接口InterfaceA, InterfaceB
{ public void someMethod( )          //實(shí)現(xiàn)接口InterfaceA的抽象方法
  {
    System.out.println("Some method in the subclass");
  }
}
public class Interfacsamedefaults
{
  public static void main(String[] args)
  {
    DefaultMethodClass def = new DefaultMethodClass( );
    def.someMethod();        //調(diào)用抽象方法
    def.DefaultMethod();      //調(diào)用默認(rèn)方法
  }
}

2 運(yùn)行

3 說(shuō)明

實(shí)例化子類(lèi)DefaultMethodClass的對(duì)象時(shí),編譯器不知道應(yīng)該在兩個(gè)同名的default方法中選擇哪一個(gè),因此產(chǎn)生了二義性。因此,一個(gè)類(lèi)實(shí)現(xiàn)多個(gè)接口時(shí),若接口中有默認(rèn)方法,不能出現(xiàn)同名的方法。

Java之所以禁止多繼承,就是想避免類(lèi)似的二義性。但是接口中允許實(shí)現(xiàn)默認(rèn)方法,又回到“二義性”的災(zāi)難之門(mén)。

更多java相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Java面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)與進(jìn)階教程》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總

希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。

您可能感興趣的文章:

相關(guān)文章

  • java調(diào)用oracle分頁(yè)存儲(chǔ)過(guò)程示例

    java調(diào)用oracle分頁(yè)存儲(chǔ)過(guò)程示例

    這篇文章主要介紹了java調(diào)用oracle分頁(yè)存儲(chǔ)過(guò)程,需要的朋友可以參考下
    2014-03-03
  • java的時(shí)間類(lèi)匯總(齊全)

    java的時(shí)間類(lèi)匯總(齊全)

    這篇文章主要介紹了java的時(shí)間類(lèi)匯總(齊全),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下
    2022-09-09
  • springboot高并發(fā)下提高吞吐量的實(shí)現(xiàn)

    springboot高并發(fā)下提高吞吐量的實(shí)現(xiàn)

    這篇文章主要介紹了springboot高并發(fā)下提高吞吐量的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Java由淺入深講解繼承下

    Java由淺入深講解繼承下

    繼承就是可以直接使用前輩的屬性和方法。自然界如果沒(méi)有繼承,那一切都是處于混沌狀態(tài)。多態(tài)是同一個(gè)行為具有多個(gè)不同表現(xiàn)形式或形態(tài)的能力。多態(tài)就是同一個(gè)接口,使用不同的實(shí)例而執(zhí)行不同操作
    2022-04-04
  • java中定義常量方法介紹

    java中定義常量方法介紹

    java中只有static和非static變量,這個(gè)屬于每個(gè)類(lèi)的,如果需要全局變量比如PI(3.14...),可以寫(xiě)一個(gè)類(lèi)Math,定義static變量PI,調(diào)用Math.PI就可以使用了,這樣就達(dá)到我們使用全局變量的目的了
    2013-10-10
  • SpringBoot如何使用過(guò)濾器進(jìn)行XSS防御

    SpringBoot如何使用過(guò)濾器進(jìn)行XSS防御

    想對(duì)全局的請(qǐng)求都進(jìn)行XSS防御可以使用servlet中的過(guò)濾器或者spring mvc中的攔截器,下面我們就來(lái)看看如何使用servlet中的過(guò)濾器進(jìn)行XSS防御吧
    2024-11-11
  • ANSI,Unicode,BMP,UTF等編碼概念實(shí)例講解

    ANSI,Unicode,BMP,UTF等編碼概念實(shí)例講解

    這篇文章主要介紹了ANSI,Unicode,BMP,UTF等編碼概念實(shí)例講解,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-12-12
  • Spring中的@EnableScheduling定時(shí)任務(wù)注解

    Spring中的@EnableScheduling定時(shí)任務(wù)注解

    這篇文章主要介紹了Spring中的@EnableScheduling注解,@EnableScheduling是 Spring Framework 提供的一個(gè)注解,用于啟用 Spring 的定時(shí)任務(wù)功能,通過(guò)使用這個(gè)注解,可以在 Spring 應(yīng)用程序中創(chuàng)建定時(shí)任務(wù),需要的朋友可以參考下
    2024-01-01
  • 關(guān)于springboot配置文件密文解密方式

    關(guān)于springboot配置文件密文解密方式

    這篇文章主要介紹了關(guān)于springboot配置文件密文解密方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • springboot+kafka中@KafkaListener動(dòng)態(tài)指定多個(gè)topic問(wèn)題

    springboot+kafka中@KafkaListener動(dòng)態(tài)指定多個(gè)topic問(wèn)題

    這篇文章主要介紹了springboot+kafka中@KafkaListener動(dòng)態(tài)指定多個(gè)topic問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12

最新評(píng)論

泉州市| 合川市| 城口县| 大同市| 枝江市| 开阳县| 高邑县| 清流县| 建宁县| 广饶县| 肥城市| 商城县| 清丰县| 荣成市| 宁远县| 淅川县| 信丰县| 丹东市| 阜新市| 曲阳县| 专栏| 安徽省| 民权县| 崇仁县| 邓州市| 明溪县| 深泽县| 德昌县| 山东省| 西宁市| 宁乡县| 武安市| 古浪县| 淮滨县| 武川县| 亚东县| 蓝山县| 邮箱| 绥江县| 益阳市| 五寨县|