HOME 首頁
SERVICE 服務(wù)產(chǎn)品
XINMEITI 新媒體代運(yùn)營
CASE 服務(wù)案例
NEWS 熱點(diǎn)資訊
ABOUT 關(guān)于我們
CONTACT 聯(lián)系我們
創(chuàng)意嶺
讓品牌有溫度、有情感
專注品牌策劃15年

    java實(shí)現(xiàn)接口的方法

    發(fā)布時(shí)間:2023-03-19 12:02:18     稿源: 創(chuàng)意嶺    閱讀: 83        問大家

    大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于java實(shí)現(xiàn)接口的方法的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。

    開始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對話答疑等等

    只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁版、PC客戶端

    官網(wǎng):https://ai.de1919.com

    本文目錄:

    java實(shí)現(xiàn)接口的方法

    一、java中接口的實(shí)現(xiàn)

    你的Sprite類需要a這個(gè)成員變量么?如果想測試就在Sprite類中寫一個(gè)main方法,在main中定義a,然后可以使用a.bar()的。

    C++是多繼承,java 是單繼承,接口可以使java以更簡單的方式具有C++那樣多繼承的效果,接口可以方便的實(shí)現(xiàn)多態(tài)

    下面是不是你想要的效果?

    interface Foo {

    int bar();

    }

    public class Sprite implements Foo {

    public int bar() {

    return 0;

    }

    public static void main(String args[]) {

    Foo a = new Sprite();

    a.bar();

    }

    }

    二、java 接口怎么用?應(yīng)該怎么實(shí)現(xiàn)?

    java語言不支持一個(gè)類有多個(gè)直接的父類(多繼承),但可以實(shí)現(xiàn)(implements)多個(gè)接口,間接的實(shí)現(xiàn)了多繼承

    用法public class test implements 接口名稱

    當(dāng)類實(shí)現(xiàn)了某個(gè)Java接口時(shí),它必須實(shí)現(xiàn)接口中的所有抽象方法,否則這個(gè)類必須聲明為抽象的

    比較抽象類與接口

    1, 抽象類與接口都位于繼承樹的上層

    相同點(diǎn)

    1, 代表系統(tǒng)的抽象層,當(dāng)一個(gè)系統(tǒng)使用一顆繼承樹上的類時(shí),應(yīng)該盡量把引用變量聲明為繼承樹的上層抽象類型,這樣可以提高兩個(gè)系統(tǒng)之間的送耦合

    2, 都不能被實(shí)例化

    3, 都包含抽象方法,這些抽象方法用于描述系統(tǒng)能提供哪些服務(wù),但不提供具體的實(shí)現(xiàn)

    不同點(diǎn):

    1, 在抽象類中可以為部分方法提供默認(rèn)的實(shí)現(xiàn),從而避免在子類中重復(fù)實(shí)現(xiàn)它們,這是抽象類的優(yōu)勢,但這一優(yōu)勢限制了多繼承,而接口中只能包含抽象方法.由于在抽象類中允許加入具體方法,因此擴(kuò)展抽象類的功能,即向抽象類中添加具體方法,不會(huì)對它的子類造成影響,而對于接口,一旦接口被公布,就必須非常穩(wěn)定,因?yàn)殡S意在接口中添加抽象方法,會(huì)影響到所有的實(shí)現(xiàn)類,這些實(shí)現(xiàn)類要么實(shí)現(xiàn)新增的抽象方法,要么聲明為抽象類

    2, 一個(gè)類只能繼承一個(gè)直接的父類,這個(gè)父類可能是抽象類,但一個(gè)類可以實(shí)現(xiàn)多個(gè)接口,這是接口的優(yōu)勢,但這一優(yōu)勢是以不允許為任何方法提供實(shí)現(xiàn)作為代價(jià)的三, 為什么Java語言不允許多重繼承呢?當(dāng)子類覆蓋父類的實(shí)例方法或隱藏父類的成員變量及靜態(tài)方法時(shí),Java虛擬機(jī)采用不同的綁定規(guī)則,假如還允許一個(gè)類有多個(gè)直接的父類,那么會(huì)使綁定規(guī)則更加復(fù)雜,

    因此,為了簡化系統(tǒng)結(jié)構(gòu)設(shè)計(jì)和動(dòng)態(tài)綁定機(jī)制,Java語言禁止多重繼承.而接口中只有抽象方法,沒有實(shí)例變量和靜態(tài)方法,只有接口的實(shí)現(xiàn)類才會(huì)實(shí)現(xiàn)接口的抽象方法(接口中的抽象方法是通過類來實(shí)現(xiàn)的),因此,一個(gè)類即使有多個(gè)接口,也不會(huì)增加Java虛擬機(jī)進(jìn)行動(dòng)態(tài)綁定的復(fù)雜度.因?yàn)镴ava虛擬機(jī)永遠(yuǎn)不會(huì)把方法與接口綁定,而只會(huì)把方法與它的實(shí)現(xiàn)類綁定.四, 使用接口和抽象類的總體原則:

    1, 用接口作為系統(tǒng)與外界交互的窗口站在外界使用者(另一個(gè)系統(tǒng))的角度,接口向使用者承諾系統(tǒng)能提供哪些服務(wù),站在系統(tǒng)本身的角度,接口制定系統(tǒng)必須實(shí)現(xiàn)哪些服務(wù),接口是系統(tǒng)中最高層次的抽象類型.通過接口交互可以提高兩個(gè)系統(tǒng)之間的送耦合系統(tǒng)A通過系統(tǒng)B進(jìn)行交互,是指系統(tǒng)A訪問系統(tǒng)B時(shí),把引用變量聲明為系統(tǒng)B中的接口類型,該引用變量引用系統(tǒng)B中接口的實(shí)現(xiàn)類的實(shí)例。

    public interface B

    {

    }

    public class C implements B

    {

    }

    public class A

    {

    }

    B a = new C();

    2, Java接口本身必須非常穩(wěn)定,Java接口一旦制定,就不允許隨遇更加,否則對外面使用者及系統(tǒng)本身造成影響

    3, 用抽象類來定制系統(tǒng)中的擴(kuò)展點(diǎn)

    抽象類來完成部分實(shí)現(xiàn),還要一些功能通過它的子類來實(shí)現(xiàn)

    三、JAVA實(shí)現(xiàn)接口的關(guān)鍵字是什么?

    Java中定義接口的關(guān)鍵字是什么?. Java中定義接口的關(guān)鍵字是“interface”。. “interface”是面向?qū)ο缶幊陶Z言中接口操作的關(guān)鍵字,功能是把所需成員組合起來,用來裝封一定功能的集合。. 接口不能直接實(shí)例化,也不能包含成員的任何代碼,只定義成員本身。.

    四、java簡單接口的實(shí)現(xiàn)

    1:你應(yīng)該定義一個(gè)抽象類,比如抽象類A,并定義一個(gè)抽象方法b()。

    2:你的畫點(diǎn)類B應(yīng)該實(shí)現(xiàn)接口A,畫線類C也要實(shí)現(xiàn)接口A。然后分別實(shí)現(xiàn)抽象方法b().B里面的方法b(),實(shí)現(xiàn)畫點(diǎn)的程序,C里面的方法b(),實(shí)現(xiàn)畫線的程序。

    3:這樣你的draw就可以寫成draw(A a),而不用管傳入的a對象是B類型還是C類型。

    4:當(dāng)傳入得對象a是B的實(shí)例,那么調(diào)用draw的結(jié)果就是畫點(diǎn)的,當(dāng)a是C的實(shí)例,調(diào)用draw后,就是畫線的。

    以上就是關(guān)于java實(shí)現(xiàn)接口的方法相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。


    推薦閱讀:

    java培訓(xùn)班學(xué)費(fèi)一般多少(軟件測試培訓(xùn)機(jī)構(gòu)哪家好)

    黑馬java培訓(xùn)班(黑馬java培訓(xùn)班在哪)

    初中生學(xué)java需要多久(尚硅谷java培訓(xùn)多少錢)

    街道景觀設(shè)計(jì)素描作品(街道景觀設(shè)計(jì)素描作品欣賞)

    一個(gè)服裝公司有哪些部門職位(一個(gè)服裝公司有哪些部門職位名稱)