精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Java為什么要使用接口_java接口怎么使用

h1654155282.3538 ? 來源:網絡整理 ? 2018-03-26 17:44 ? 次閱讀

Java接口是什么

Java接口是一系列方法的聲明,是一些方法特征的集合,一個接口只有方法的特征沒有方法的實現,因此這些方法可以在不同的地方被不同的類實現,而這些實現可以具有不同的行為(功能)。

接口(英語:Interface),在JAVA編程語言中是一個抽象類型(Abstract Type),它被用來要求類(Class)必須實現指定的方法,使不同類的對象可以利用相同的界面進行溝通。接口通常以interface來宣告,它僅能包含方法簽名(Method Signature)以及常數宣告(變量宣告包含了 static 及 final),一個接口不會包含方法的實現(僅有定義)。

接口無法被實例化,但是可以被實現。一個實現接口的類,必須實現接口內所描述的所有方法,否則就必須宣告為抽象類(Abstract Class)。另外,在Java中,接口類型可用來宣告一個變量,他們可以成為一個空指針,或是被綁定在一個以此接口實現的對象。

其中一個使用接口的優勢是,可以利用他們模擬多重繼承,類在JAVA中不允許多重繼承,所有在JAVA中的類必須而且僅能有一個父類,而java.lang.Object(JAVA類型系統中最頂層的類型)是唯一一個例外。

JAVA的類可以被實現許多個接口,然而一個接口則無法實現其他的接口。

Java為什么要使用接口

實現具體功能時,接口和實現的類分離。接口定義為XxxService,實現為XxxServiceImpl。接口提供了一個公用的方法提供方。 接口是用來規定子類的行為的。

面向接口編程的好處:

1、根據客戶提出的需求提出來,作為接口的;業務具體實現是通過實現接口類來完成的。

2、當客戶提出新的需求時,只需編寫該需求業務邏輯新的實現類。

3、假如采用了這種模式,業務邏輯更加清晰,增強代碼可讀性,擴展性,可維護性。

4、接口和實現分離,適合團隊協作開發。

5、實現松散耦合的系統,便于以后升級,擴展。

Java接口能實現什么功能呢

在Java語言規范中,一個方法的特征僅包括方法的名字,參數的數目和種類,而不包括方法的返回類型,參數的名字以及所拋出來的異常。在Java編譯器檢查方法的重載時,會根據這些條件判斷兩個方法是否是重載方法。但在Java編譯器檢查方法的置換時,則會進一步檢查兩個方法(分處超類型和子類型)的返還類型和拋出的異常是否相同。

Java接口本身沒有任何實現,因為Java接口不涉及表象,而只描述public行為,所以Java接口比Java抽象類更抽象化。但是接口不是類,不能使用new 運算符實例化一個接口。

如:

x=new comparable(……);//這個是錯誤來的。

但是可以聲明接口變量

Comparable x; //這是允許的。

Java接口的方法只能是抽象的和公開的,Java接口不能有構造器,Java接口可以有public、靜態的和final屬性。即接口中的屬性可以定義為

public static final int value=5;

接口把方法的特征和方法的實現分割開來。這種分割體現在接口常常代表一個角色,它包裝與該角色相關的操作和屬性,而實現這個接口的類便是扮演這個角色的演員。一個角色由不同的演員來演,而不同的演員之間除了扮演一個共同的角色之外,并不要求其它的共同之處。

接口的定義方式如下

接口的主體包含著抽象方法,但所有方法在接口內(定義上)都是抽象(Abstract)方法,所以abstract的關鍵字在接口內則不被需要。由于接口代表著一個對外行為的集合,所以任何方法在接口內都是public(公開的)。

Java為什么要使用接口_java接口怎么使用

接口內的成員皆為靜態(static)、final及公開(public),反之,他們可以成為任何類或接口的類型

接口的使用解決類只能單繼承的問題,因為一個類可以實現多個接口。

那么Java中要如何去實現一個接口并且在實現他的子類中調用接口中的方法呢?

接口的實現方式

Java為什么要使用接口_java接口怎么使用

如果一個類實現了一個接口,而沒有實現接口的所有方法,則它必須被標注為abstract(抽象類)。一個抽象類的子類必須實現它未完成的方法,假如該項子類仍不會實現接口的所有方法,那么該項子類依然需要被標注為abstract。

接口通常被使用在Java編程語言,用來做回調函數使用[2] 。Java并不允許方法作為參數傳遞使用,因此,其中一個解決辦法則是可以定義一個接口,把這個接口當成方法的參數,以此來使用該項對象的方法簽名。

子接口[編輯]

接口可以被延伸為數個不同的接口,可以使用上述所描述的方法,舉例來說:

Java為什么要使用接口_java接口怎么使用

以上的程序片段是合法定義的子接口,與類不同的是,接口允許多重繼承,而Predator 及 Venomous 可能定義或是繼承相同的方法,比如說kill(Prey prey),當一個類實現VenomousPredator的時候,它將同時實現這兩種方法。

有些泛用的Java接口可供參考:

Comparable

擁有一個方法compareTo,用以描述兩個對象是否相等,或是其中一個對象大于另外一個對象。泛型允許已經實現的類,其對象可以用來互相比較。

Serializable 是一個marker interface 沒有任何接口或是字段,僅有一個空的主體,它被用來表示一個類可以被序列化。它的Javadoc描述了他是如何運作,而且不需要被強制編程。

為了能夠向上轉型為多個基類型。即利用接口的多實現,可向上轉型為多個接口基類型。

java接口的使用

java接口或抽象類都可以使用向上轉型,它們用的都是java運行時多態技術,或者叫運行期綁定技術。下面是一個java接口的普遍用法:

Java為什么要使用接口_java接口怎么使用

結果:

I’m a student.

I’m a teacher.

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 接口
    +關注

    關注

    33

    文章

    8496

    瀏覽量

    150831
  • JAVA
    +關注

    關注

    19

    文章

    2957

    瀏覽量

    104544
收藏 人收藏

    評論

    相關推薦

    JAVA操作英創主板SPI接口簡介

    訪問硬件資源,英創提供了Java硬件支持包,主要支持的工控接口有:以太網、串口、CAN、GPIO、SPI、I2C、RTC等。本文主要介紹使用Java語言調用英創Java硬件支持包,操作
    發表于 10-20 13:16

    SqlServer觸發器調用java接口的方法

    SqlServer觸發器調用java接口
    發表于 06-15 09:53

    基于JAVA的ICQ系統的源代碼

    基于JAVA的ICQ系統 服務器與客戶間通過套接口Socket(TCP)連接。在java中使用套接口相當簡單,Java API為處理套
    發表于 03-10 13:39 ?13次下載

    JAVA制作的ICQ系統

    JAVA制作的ICQ系統   基于JAVA的ICQ系統服務器與客戶間通過套接口Socket(TCP)連接
    發表于 03-29 14:12 ?21次下載

    Java中包、接口與異常處理(exception) 實驗

    實驗 4 包、接口與異常處理(exception) 一、實驗目的     了解 Java 中包(package)、接口(interface)和異常處理(exception)的作用,掌握包、
    發表于 09-23 19:00 ?1183次閱讀

    McObject發布用于eXtremeDB的Java本地接口

    McObject發布用于eXtremeDB的Java本地接口  實時應用數據庫系統的創新廠商McObject公司發布了用于其嵌入式數據庫產品eXtremeDB™的Java本地接口
    發表于 02-01 13:43 ?903次閱讀

    接口、內部類和Java API基礎

    理解接口的作用,理解接口和實現接口的類的關系,掌握聲明接口、一個類實現多個接口的聲明和使用方法。理解內嵌類型的概念,掌握聲明內部類的方法。熟
    發表于 11-23 11:52 ?0次下載

    java動態代理機制詳解的類和接口描述

    的我們的功能,我們更需要學習的是其底層是怎么樣的一個原理,而AOP的原理就是java的動態代理機制,所以本篇隨筆就是對java的動態機制進行一個回顧。 在java的動態代理機制中,有兩個重要的類或
    發表于 09-28 13:33 ?0次下載

    Java學習路線教程之Java新手必須學習那21個技術點詳細資料說明

    Java中調用本地接口方法,一般用于C/C++代碼的調用。需要注意的是在java中加載so/dll文件的路徑問題,本身調用接口并不復雜,但是經常在是否加載了所需的本地
    發表于 12-19 15:23 ?19次下載

    基于Java接口快速開發框架

    作者丨編碼磚家 來源丨http://adkx.net/w5m4s Part1簡介 magic-api 是一個基于Java接口快速開發框架,編寫接口將通過magic-api提供的UI界面完成,自動
    的頭像 發表于 09-10 09:36 ?3694次閱讀

    基于Java接口快速開發框架——magic-api

    magic-api 是一個基于Java接口快速開發框架,編寫接口將通過magic-api提供的UI界面完成,自動映射為HTTP接口,無需定義Controller、Service、Da
    發表于 07-19 11:42 ?881次閱讀
    基于<b class='flag-5'>Java</b>的<b class='flag-5'>接口</b>快速開發框架——magic-api

    Java序列化怎么使用

    java.io.Serializable 接口 public interface Serializable {} Serializable 接口沒有定義任何的方法,是一個空接口。為
    的頭像 發表于 10-10 14:19 ?423次閱讀

    java接口和抽象類的區別

    Java中的接口(Interface)和抽象類(Abstract class)都是抽象的概念,它們可以用來定義類的行為和特征。雖然它們具有一些相似之處,但也存在一些重要的區別。本文將詳盡介紹Java
    的頭像 發表于 11-21 09:45 ?503次閱讀

    Java中抽象類和接口的介紹

    Java是一種面向對象的編程語言,提供了抽象類和接口兩種機制來幫助開發人員組織和管理代碼。本文將詳細介紹Java語言中抽象類和接口的概念、特點、使用方式以及它們之間的區別和聯系。 抽象
    的頭像 發表于 11-21 09:47 ?435次閱讀

    java接口是特殊的抽象類嗎

    Java接口是一種特殊的抽象類嗎? 在Java編程語言中,接口(interface)與抽象類(abstract class)是兩種不同的概念,盡管它們之間存在一些相似之處,但在設計和使
    的頭像 發表于 11-21 10:07 ?594次閱讀