<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            java語言

            Java語言中接口的定義及實現

            時間:2025-05-28 11:21:23 java語言 我要投稿
            • 相關推薦

            Java語言中接口的定義及實現

              導語:在Java中,除了使用抽象類來實現一定程度的抽象外,還可以定義一種特殊的“抽象類”:接口。下面就由小編為大家介紹一下Java語言中接口的定義及實現,歡迎大家閱讀!

              引言

              在Java語言中為了使程序設計變得簡單清晰,不允許類的多重繼承,只允許單重繼承,即一個類只能有一個直接父類。這雖然簡化了程序的結構,但也喪失了編寫程序的靈活性,減弱了面向對象程序設計的代碼復用功能。因此需要引進其他的機制來幫助實現類似于類的多重繼承的功能,這就是Java語言中的接口(interface)。

              接口是一種完全沒有實現的類,在接口中只包含了抽象的方法和常量的定義。與類不同的是,接口的定義使用interface關鍵字,而類的定義使用class關鍵字。實際上,接口是一種特殊的抽象類,這種抽象類中只包含常量和方法的定義,沒有變量和方法的實現。即接口是一種概念性的模型,它有助于類層次結構的設計。某些代碼設計的方法是首先設計所有的接口和類,然后再設計實現接口。這樣會避免代碼集成時出現的許多問題。以這種方式進行的設計通常更為通用而且更易于擴展。

              接口的用處主要體現在以下幾個方面:

              ①可以實現不相關類的相同行為,而不需要考慮這些類之間的層次關系。②可以指明多個類需要實現的方法。③可以理解對象的交互界面,而不需要了解對象所對應的類。

              1接口的定義

              接口的定義包括兩個部分:聲明部分和接口體。

              1.1 接口的聲明接口用interface關鍵字來聲明,接口聲明的一般格式為:

              [修飾符]interface<接口名>[extends<父類接口列表>]{

              接口體

              }

              其中

              修飾符:為接口的訪問權限,有public和缺省兩種狀態。public表示任意類均可使用這個接口。缺省情況下,只有與該接口定義在同一包中的類才可以訪問這個接口,而其他包中的類無權訪問該接口。

              接口名:為Java中的合法標識符。

              父類接口列表:一個接口可以繼承其它接口,可通過關鍵字extends來實現,其語法與類的繼承相同。被繼承的接口為父類接口,當有多個父類接口時,用逗號“,”分隔開。子接口可以繼承父接口的所有常量和方法。

              1.2 接口體接口體是包含在一對大括號中的部分,由常量定義和方法定義兩個部分。

              1.2.1 常量定義常量定義的格式如下:

              [public][static][final]<常量類型><常量名>=<常量值>

              其中

              public static final:接口中的常量只能被public static final修飾,即使沒有在聲明中顯式修飾而使用系統默認也是一樣,接口中的常量必須被賦予常量值,并且在繼承這個接口的類也不能改變它的值。

              常量類型:可以是任何類型。

              常量名:為Java中的合法標識符,通常大寫。

              1.2.2 方法定義方法定義的格式如下:

              [public][abstract]<返回值類型><方法名(參數列表)>

              接口中只進行方法的聲明,而不提供方法的實現。所以方法定義沒有方法體,且用分號“;”結尾。接口中的方法默認是由public abstract修飾的,因此不管是否有修飾符顯式修飾接口中的方法都是公共的抽象方法。

              如果在子類接口中定義了和父類接口中同名的常量和相同的方法,則父類接口中的常量被隱藏,方法被重寫。

              2方法的實現

              一個接口可以被一個或多個類實現。當一個類實現一個接口,它必須實現接口中所有的方法,用關鍵字implements實現接口。一個類還可以實現多個接口,各接口用逗號“,”隔開,實現接口的語句格式如下:

              class<類名>implements接口名1,接口名2,……

              在類體中可以使用接口中定義的常量,由于接口中的方法為抽象方法,所以必須在類體中加入要實現接口方法的代碼,如果一個接口是從別的一個或多個父接口中繼承而來的,則在類體中必須加入實現該接口及其父接口中所有方法的代碼。在實現接口時,類中對方法定義要和接口中的相應方法的定義相匹配,其方法名、方法返回值類型、方法的訪問權限和參數的數目與類型等都要一致。

              3接口和抽象類的區別

              抽象類和接口在Java語言中都是用來進行抽象類定義的。在面向對象的概念中,所有的對象都是通過類來描述的,但并不是所有的類都是用來描繪對象的,如果一個類中沒有包含足夠的信息來描繪一個具體的對象,這樣的類就是抽象類。抽象類往往用來表征在對問題領域進行分析、設計中得出的抽象概念,是對一系列看一去不同,但是本質上相同的具體概念的抽象。

              抽象類和接口是不同的,具體區別如下:

              抽象類中可以定義成員變量和成員方法,其中可含有非抽象的成員方法。而接口中只能定義常量和沒有實現的方法,方法完全是抽象的,只有聲明,沒有方法的具體實現。

              一個子類只能繼承一個抽象類,但一個子類可以實現多個接口。

              抽象類和接口有相同的地方,二者都不能實例化。

            【Java語言中接口的定義及實現】相關文章:

            Java接口介紹05-08

            Java8自定義帶泛型的函數式接口08-02

            Java圖形用戶接口03-19

            Java語言接口interface02-07

            java語言的接口與繼承02-26

            Java的抽象和接口03-31

            介紹Java array接口01-13

            java面向接口編程08-01

            Java接口是什么07-21

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看